在安装一些npm
模块的时候,经常遇到需要在本机编译的包。在Linux
系统下很少遇到问题。但是在Windows
上会遇到不少莫名其妙的问题。在此将问题和解决方法记录如下。
node-gyp
的使用
Node
的C/C++ Addon
采用node-gyp
来产生工程,进行编译。所以,很多时候是node-gyp
没有用对。安装如下设置即可。
安装编译工具
安装Visual C++ Build Tools或者Visual Studio Community。如果系统为
Windows Vista
或者Windows 7
则需要安装.NET Framework 4.5.1安装Python 2.7并运行
npm config set python python2.7
。node-gyp
只支持2.7版本的python
在命令行中运行
npm config set msvs_version 2015
来设置编译环境。
如果不能正常工作,参考Microsoft's Node.js Guidelines for Windows
设置node-gyp
使用的python
当node-gyp
是在npm
命令中使用时(使用npm
安装Node
模块),如果使用多种版本的python
,则可以通过如下命令,明确设置node-gyp
所使用的python
。
npm config set python /path/to/executable/python2.7
当全局安装node-gyp
时,如果使用多种版本的python
,则可以通过如下命令,明确设置node-gyp
所使用的python
。
node-gyp --python /path/to/python2.7
常见问题
python
版本不对
按照node-gyp
的使用来搭建node-gyp
必要的运行环境。
“v8::
”下的代码出现编译错误
编译环境问题。使用Visual C++ Build Tools
或者Visual Studio Community
的开发人员命令提示这一类的控制台工具进行安装。此类工具会自动设置编译需要的环境变量。