win7 + cygwin + nodejs很詳細的安裝步驟【推薦】


win7下安裝node.js詳細步驟

1.下載cygwin:http://cygwin.com/setup.exe
2.安裝cygwin幾個要點:

(1)Install from Internet,安裝程序在后面步驟會下載大量文件。
(2)Root Directory,是Cygwin的安裝目錄。
(3)Local Package Directory,是存放所有下載文件的目錄,子目錄名即下載鏡像網址,子目錄下的release目錄存放的就是所下載的包。
(4)選擇連接方式:可以直接連接(Direct Connection),也可以使用代理(Proxy)。
(5)下載鏡像站點推薦:
http://mirrors.kernel.org
http://cygwinminor.3gforphones.com
http://mirrors.163.com/cygwin
http://mirrors.sohu.com/cygwin/
也可以獲得官方鏡像列表后自己驗證,http://cygwin.com/mirrors.lst

(6)首次安裝提示信息,OK忽略,但如果安裝過cygwin 1.7以下版本,參考:
http://cygwin.com/cygwin-ug-net/ov-new1.7.html

(7)選擇包。Default所選包的缺省安裝項,Install所選包的全部項,Reinstall斷點續傳,Uninstall卸載。推薦Install方式。
nodejs所需包:

Devel(開發)目錄下的包:
gcc-g++: C++ compiler
gcc-mingw-g++: Mingw32 support headers and libraries for GCC C++
gcc4-g++: G++ subpackage
git: Fast Version Control System – core files(它可以從 github 下載軟件最新版源碼)
make: The GNU version of the 'make' utility
openssl-devel: The OpenSSL development environment
pkg-config: A utility used to retrieve information about installed libraries
zlib-devel: The zlib compression/decompression library (development)

Editor目錄下的包:
vim: Vi IMproved - enhanced vi editor

Python目錄下的包:全部Install方式安裝

Web目錄下的包:
wget: Utility to retrieve files from the WWW via HTTP and FTP
curl: Multi-protocol file transfer command-line tool,npm(node's package manager),nodejs軟件包管理器,通過它安裝Nodejs各種擴展模塊

選完包,Next,如果所選軟件包有依賴包,Next確認。

(8)一般情況下,下載所需時間真的很久。下載進度如果出現停滯,取消后重啟setup.exe,所有設置同前一次,一直Next到選包部分,Reinstall,已下載過的包會做md5校驗碼檢測,完整下載過的不會再次下載。下載完后進入自動安裝,Cygwin安裝目錄下的bin、lib、usr這3個目錄的內容會迅速增長。
3.Windows 7(windows Vista) 特殊步驟

Windows 7(Windows Vista及以后版本),要正常編譯nodejs,必須先在Cywgin的ASH模式下執行rebaseall。步驟如下:
(1)cmd命令行
(2)進入cygwin安裝目錄下的bin子目錄
(3)運行ash進入shell模式
(4)./rebaseall -v
(5)沒有錯誤,完成,exit退出ash,關閉命令行窗口
4.rebaseall時出現錯誤的解決方案:

(1)rebaseall:'/cygdrive/c/Users/ADMINI~1/AppData/Local/Temp' is not writable
啟動cygwin安裝目錄下的cygwin.bat進入終端后:
$cd /
$chmod 777 cygdrive/c/Users/ADMINI~1/AppData/Local/Temp
關閉退出終端

(2)FixImage (/usr/x86_64-w64-mingw32/sys-root/mingw/bin/libgcc_s_sjlj-1.dll) faile, with last error = 13
修改cygwin安裝目錄下bin子目錄下的rebaseall文件,110行增加下列代碼:
-e '/\/sys-root\/mingw\/bin/d'
修改后的110行如下:
sed -e '/\/sys-root\/mingw\/bin/d' -e '/cygwin1\.dll$/d' -e '/cyglsa.*\.dll$/d' -e 's/^/\//' >"$TmpFile"
修改后保存,重新./rebaseall -v
5.cygwin終端中下載、編譯、安裝nodejs

$ wget http://nodejs.org/dist/node-v0.4.8.tar.gz
$ tar xf node-v0.4.8.tar.gz
$ cd node-v0.4.8
$ ./configure
$ make
$ make install

 

6.設置DNS

cygwin內部是使用windows的DNS查詢,而nodejs另外使用的是c-ares庫來解析DNS,這個庫會讀取/etc/resolv.conf里的nameserver配置,而默認是沒有這個文件的,需要自己建立並配置好DNS服務器的IP地址,這里使用Google Public DNS服務器的IP地址:8.8.8.8和8.8.4.4。

$ vi /ect/resolv.conf

nameserver 8.8.8.8
nameserver 8.8.4.4


7.nodejs測試

(1)查看nodejs的版本信息:
$node -v

(2)編寫一個簡單的js文件測試nodejs的Http Server,我這里的存放路徑為cygwin安裝目錄下里的home/Administrator/node-v0.4.8/test.js,UTF-8編碼保存js文件。代碼用記事本編寫的,內容如下:

var http = require('http'),port = 8888;

http.createServer(function(request,response){
response.writeHead(200,{'Content-Type':'text/html;charset=utf-8;'});
response.end('<h1>這里是NodeJS的世界!</h1>');
}).listen(port);

console.log('服務已啟動 );

(3)測試
$ cd node-v0.4.8
$ node test.js
服務已啟動 http://127.0.0.1:8888/

A.瀏覽器打開http://127.0.0.1:8888/,輸出頁面內容:這里是NodeJS的世界!
B.curl
$ curl http://127.0.0.1:8888/
<h1>這里是NodeJS的世界!</h1>

test.js如有更改,CTRL+C停止Http Server,然后重新開啟,$ node test.js
8.npm下載、安裝、使用
npm是nodejs的軟件包管理器,可以用它安裝所需軟件包並發布自己為nodejs寫的軟件包,它還管理軟件包的依賴關系並做了其它一些很酷的事情。

(1)一行命令下載並安裝npm
$ curl http://npmjs.org/install.sh | sh

(2)npm安裝node擴展包,同樣是一行命令下載並安裝好軟件包
$ npm install <包名>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM