-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
node-gyp uses some current process information even when a target version is supplied #1004
Comments
Is there a workaround for that? node_shared_openssl, node_shared_zlib, node_module_version, etc are all wrong. |
closing due to staleness, but it'd be great to get a pull request to address any outstanding issues here, happy to discuss further around code |
I just encountered a different problem that I believe is caused by this same bug. When I try to build for Node 14 using Node 12, I see this error: "gyp: name 'v8_enable_pointer_compression' is not defined while evaluating condition 'v8_enable_pointer_compression == 1' in binding.gyp while trying to load binding.gyp" That condition does not appear anywhere in my own binding.gyp, so I assume that it comes from If I am interpreting this right, that means that as a result of this bug, no binary for Node 14 or later can be built on Node 12 or earlier. |
@murgatroid99 thanks for reporting. This is an oversight of nodejs/node#30463. I've raised nodejs/node#33688 to fix. |
When running
node-gyp configure
, the config.gypi file is generated fromprocess.configure
. This is done even if a--target=<version>
argument is passed, which is incorrect.For example, the Linking to OpenSSL guide says that the
node_shared_openssl
variable indicates whether to compile against Node's OpenSSL headers. In addition, thenode_module_version
variable contains the Node ABI version. Clearly, both of those (and the rest of the configuration) should depend on their value for the target version.The text was updated successfully, but these errors were encountered: