-
Notifications
You must be signed in to change notification settings - Fork 30.3k
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
Issues building test addons with both VS2015 and VS2017 installed #13641
Comments
That is an interesting 🤔 edge case. I would think that it should have popped up after nodejs/node-gyp@ae141e1 since nodejs/node-gyp@bad903ac70 was just a bug fix (that probably just made |
Actually this is probably a |
Thanks for taking a look, @refack, I thought it might be an upstream issue, but figured it would be good to start here. I also suspect you're right about the original change being a no-op on my system and that the bug fix finally activated it, exposing the issue. |
vcbuild.bat should detect what version of Visual Studio to use, it should simply work without any parameter if any supported version is installed. It should default to the latest version, to match the behavior of `node-gyp`. Fixes: nodejs#13641
This is caused by 2 issues (solving either fixes this, but we should solve both):
|
I tought |
vcbuild.bat should detect what version of Visual Studio to use, it should simply work without any parameter if any supported version is installed. It should default to the latest version, to match the behavior of `node-gyp`. PR-URL: nodejs#13911 Fixes: nodejs#13641 Reviewed-By: Refael Ackermann <[email protected]>
vcbuild.bat should detect what version of Visual Studio to use, it should simply work without any parameter if any supported version is installed. It should default to the latest version, to match the behavior of `node-gyp`. PR-URL: #13911 Fixes: #13641 Reviewed-By: Refael Ackermann <[email protected]>
vcbuild.bat should detect what version of Visual Studio to use, it should simply work without any parameter if any supported version is installed. It should default to the latest version, to match the behavior of `node-gyp`. PR-URL: #13911 Fixes: #13641 Reviewed-By: Refael Ackermann <[email protected]>
When vs2017 and vs2015 are both installed and vs2015's MSBuild.exe is in the Path environment variable, node-gyp fails to build if it configured the project to build with vs2017, because it tries to use vs2015's MSBuild.exe, which is unable to find the v141 (vs2017) Platform Toolset build tools. Change build behaviour to prefer using the MSBuild.exe path if it is defined in config.gypi instead of using the MSBuild.exe found in Path by "which". Ref: nodejs/node#13641
When vs2017 and vs2015 are both installed and vs2015's MSBuild.exe is in the Path environment variable, node-gyp fails to build if it configured the project to build with vs2017, because it tries to use vs2015's MSBuild.exe, which is unable to find the v141 (vs2017) Platform Toolset build tools. Change build behaviour to prefer using the MSBuild.exe path if it is defined in config.gypi instead of using the MSBuild.exe found in Path by "which". Ref: nodejs/node#13641
After the upgrade of npm to 5.0.3 the addon tests started failing to build. I tracked it down to the
node-gyp
change nodejs/node-gyp@bad903ac70 by @refack. What I think is happening is that node-gyp now detects and tries to build with VS2017, but the node default build uses VS2015.After reverting the Win10SDK change, the build completes successfully. I was able to work around the issue by forcing the build to use VS2017:
out.txt
config - before revert.txt
config - after revert.txt
[refack wrapped output in <details>]
The text was updated successfully, but these errors were encountered: