什么是node-gyp?
gyp是一種根據(jù)c++源代碼編譯的工具,node-gyp就是為node編譯c++擴(kuò)展的時候使用的編譯工具。
最近在研究native script需要使用到node-gyp,遇到一些問題所以將解決方案記錄在這里。
windows下的安裝方法
這是為node編譯c++擴(kuò)展的工具所以你肯定是有node環(huán)境的,這時,使用npm全局安裝即可。
npm install -g node-gyp
到這里我們還不可以進(jìn)行編譯,因為node-gyp需要依賴python2.7和微軟的vc++構(gòu)建工具來進(jìn)行編譯,這在linux系統(tǒng)上沒問題,因為linux上都默認(rèn)安裝了,但是windows操作系統(tǒng)在默認(rèn)情況下不會安裝python2.7和vc++構(gòu)建工具。
為node-gyp配置安裝python2.7以及VC++ build Tools依賴
方法一
同樣使用npm
npm install --global --production windows-build-tools
直接在cmd當(dāng)中輸入上面的指令就可以了,但是這種方法是從外國的服務(wù)器上下載資源,速度會相當(dāng)?shù)穆?。所以國?nèi)的用戶我推薦第二種方法
方法二
方法二會相對麻煩一點
首先,Visual C++ Build Tools從微軟官方網(wǎng)站下載vc++構(gòu)建工具,安裝的時候使用默認(rèn)安裝就可以了,這個步驟比較簡單。和安裝vs一樣只需要等待就可以了。
然后,我們?nèi)ython的官方網(wǎng)站下載python2.7(如果服務(wù)器軟件不支持python2.7可能都無從下載了。)python官方網(wǎng)站下載python2.7.然后默認(rèn)安裝,安裝的時候會有一個選項是添加PATH可以勾選,但是安裝完以后還是要去環(huán)境變量里面查看一下是否添加了。
根據(jù)安裝包安裝好以后配置環(huán)境變量,如果之前安裝過python3的話,可以直接進(jìn)入到python3的文件夾當(dāng)猴子那個將python.exe改名為python3.exe,以后在cmd當(dāng)中使用的時候直接輸入python進(jìn)入的是python2.7,輸入python3進(jìn)入的就是python3了。這里對環(huán)境變量不太了解的可以百度一下,很簡單。
配置依賴
依賴安裝好了以后要配置一下依賴,讓node-gyp可以找到依賴方法很簡單。
打開cmd輸入:
npm config set python python2.7
配置好python
npm config set msvs_version 2015
配置好c++構(gòu)建工具
如果不出意外的話我們就可以用node-gyp進(jìn)行構(gòu)建了。
如果出現(xiàn)問題可以參考node-gyp的github主頁。
總結(jié)
native script在構(gòu)建依賴環(huán)境的時候需要使用到node-gyp自動安裝的時候會自動下載和安裝node-gyp但是鏈接國外的網(wǎng)站實在太慢了,所以自己去查了資料手動安裝,還是迅雷下載塊。最后將經(jīng)驗記錄在此。