我如何将VCBuild.exe添加到Windows 10 w / o Visual Studio


26

所以我正在尝试编译gyp,它显然想调用VCBuild.exe ...

MSBUILD : error MSB3428: Could not load the Visual C++ component "VCBuild.exe".
 To fix this, 1) install the .NET Framework 2.0 SDK, 2) install Microsoft Visua
l Studio 2005 or 3) add the location of the component to the system path if it
is installed elsewhere.  [C:\...\node_module
s\browser-sync\node_modules\socket.io\node_modules\engine.io\node_modules\ws\no
de_modules\utf-8-validate\build\binding.sln]

所以我使用这个安装.Net框架,但是当我进入cmd行时,我得到了...

'VCBuild.exe' is not recognized as an internal or external command,
operable program or batch file.

因此,我缺少了在没有Visual Studio的情况下获取VCBuild所需的东西?


我刚刚进入VCBuild.exe
杰基,

我知道这意味着什么,但我什至不认为该框架会安装在Win 10上。我已经尝试过了
Jackie

那会在哪里?
杰基

同样是Windows 10,所以我不确定Vs 2005的运行情况如何,我没有副本,所以这些都是不行的选择。
杰基

1
所以我必须安装整个IDE才能获得此工具?
杰基

Answers:


58

npm install -g windows-build-tools

在管理窗口中运行:

开始安装...
启动了安装程序,现在等待它们完成。
这可能需要一些时间-请耐心等待!
等待安装程序...-已成功安装Python 2.7
等待安装程序... /成功安装了Visual Studio Build Tools。

1
太好了,现在当我想要的只是VCBuild时,我可以安装多个Python。
aroth's

对我来说工作完美-运行Windows 7 Enterprise
jBoive '18

1
这解决了部分node-gyp问题,尽管仍然缺少“ VCBuild”。
s.meijer

4
额外choco install -y vcbuildtools修复了我的构建环境。
s.meijer

2
Windows 10正常运行。只是花了这么长时间,您才怀疑它是否卡住了,请继续等待。
Syed Priom '18

2

(此答案来自@ s.meijer的上述评论。但我认为它应该自己作为一个答案。)

运行choco install vcbuildtools将在Windows上vcbuild满足npm构建需求的安装。


0

答案似乎在盯着我...你不能:-(

我找到了在node- gyp Readme.md上进行编译的步骤

实际上,它确实需要Windows的VS2015,因为

在此处输入图片说明


1
最终是16GB
Jackie

VC ++本身大于3GB。
Nick Cox

0

我只是发布此信息,以防它节省任何时间。

我尝试了有关该问题的所有答案,但都没有用,例如:

// running powershell as administrator  
npm install --global --production windows-build-tools 

choco install vcbuildtools

使"VCBuild.exe"错误消失的唯一方法是安装:

NET Framework 2.0 Software Development Kit (SDK) 

安装有点怪异,我运行了.exe文件,但似乎什么都没发生,但从安装错误消息消失,显然可以正常工作并安装的事实来看。


1
不知道这是否真的有帮助,但我要投票赞成。似乎windows-build-tools并没有完全帮助您,.NET 2.0 SDK处于静默状态(没有UI),这令人困惑。2-3分钟后,重建工作开始。
misha
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.