为什么node-gyp(和其他东西)需要Visual Studio?
node-gyp并不是我所要求的第一件事情,但这似乎很奇怪。 我认为这与构build可执行文件或插件或其他任何东西有关,但是没有比完整版本的Visual Studio或VS Express更小的依赖关系吗? 我虽然你可以真正写,build立和运行.net应用程序没有VS的副本,如果你真的想。 我打算至less学习一些C ++或其他任何尝试解决这个问题所需要的东西,尽pipe我觉得如果Joyent无法轻易地find解决方法,这是非常重要的。
注意:node-gyp作为一个节点依赖项没有问题,但是有这个问题的Windows用户应该尝试通过从web上下载并从那个exe文件重新安装来更新节点,然后再做任何其他疯狂的事情,回避。 他们似乎已经修复了2010年版本的问题,但没有真正大声宣布,而npm在试图在Windows上更新自身和Node时并没有真正起作用。
它没有Visual Studio的工作,但你需要安装Windows SDK:
- 从https://www.microsoft.com/en-us/download/details.aspx?id=8442获取Windows SDK
- 使用桌面上的“SDK命令行”快捷方式启动npm install
我在这里find了这个解决scheme: https : //github.com/nodejs/node-gyp/issues/629#issuecomment-138276692
最后微软提供了更好的解决scheme。 独立的Microsoft Visual C ++构build工具2015年技术预览更多信息在这里和这里
节点本身和其他“接近核心”库,如C ++编译器node-gyp。 在Windows上的大多数开发环境中,这将是Visual Studio和Python的结合。 但是你也可以使用MinGW或者Cygwin来安装gcc
。
直接用gcc
做东西的经验可以比较一下在Windows平台上编译.NET代码。 但是gcc
在Windows上感觉不到本机。
我可以使用windows-build-tools在没有Visual Studio的 Windows 10上运行node-gyp 0.8.x。
以pipe理员身份运行:
npm install --global --production windows-build-tools
等待安装完成。
内容
- Visual C ++编译器(针对x86,X64和ARM)
- Visual C ++头文件和库(CRT和STL)
- Visual C ++构build脚本(针对Windows桌面)
- 微软构build工具2015(MSBuild)
- Windows SDK 8.1(可选,默认情况下)
- Windows SDK 10(可选,默认closures)
- ATL和MFC(可选,默认closures)
- C ++构build工具特定的命令提示符