npm install 安装node_gyp的时候报错
发布于 9 年前 作者 zhongzefeng2014 12435 次浏览 最后一次编辑是 8 年前 来自 问答

各位大神好,这是我在npm install 安装node_gyp的时候的报错,我的vs不是安装在系统盘的,如果是因为这个原因出的问题,我应该如何修改?万分感谢,装不成写不了代码T T QQ拼音截图未命名.jpg

7 回复

红字部分让你把 VCBuild.exe 的路径加到 binding.sln 文件里。

@leapon 是VCBuild.exe路径是在哪里,可以告知一下吗谢谢,我找不到

这个红字的文件,不知道把地址放在哪里 Microsoft Visual Studio Solution File, Format Version 9.00 "# Visual Studio 2005 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = “bcrypt_lib”, “bcrypt_lib.vcproj”, "{C4446784-D5C9-0A91-E6CB-A45F4161E77F}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|x64 = Debug|x64 Release|x64 = Release|x64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {C4446784-D5C9-0A91-E6CB-A45F4161E77F}.Debug|x64.ActiveCfg = Debug|x64 {C4446784-D5C9-0A91-E6CB-A45F4161E77F}.Debug|x64.Build.0 = Debug|x64 {C4446784-D5C9-0A91-E6CB-A45F4161E77F}.Release|x64.ActiveCfg = Release|x64 {C4446784-D5C9-0A91-E6CB-A45F4161E77F}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection EndGlobal

@leapon 我刚才去stackoverflow上搜索了一下,突然看到有个人说vs2010开始就没有vcbuild.exe了换成了msbuild.exe,我这个项目是慕课网上的可能他使用的nodegyp版本比较低,要求使用vs2005,后来我直接npm install node-gyp是成功的,所以应该是版本的问题,跟我安装vs的路径无关,谢谢拉,哈哈哈可以写代码了。

@zhongzefeng2014 执行npm config set msvs_version 2015 --global 解决

我要挖坟了。2年前的帖子。

最近我也在装node-gyp尝试了手动按装Visual C++ Build Tools(2015版的), 也执行了一遍npm config set msvsversion 2015 --global, 但问题依旧还是会报,未能加载Visual C++组件,检查了一遍node-gyp configure的输出结果其中有一项msvs_version=auto感觉像是npm的设置没有起作用,所以我在node-gyp rebuild后面增加了一个参数–msvs_version=2015,编译成功 最后我找了一台通过npm install --global --production windows-build-tools按装好的机器对比了一下,发现这台机器上的系统环境变量中多出了一个GYP_MSVS_VERSION=2015,怀疑到是这个配置的问题,尝试配置这个参数后,再用node-gyp rebuild直接就成功了。

回到顶部