爲了在nodejs下用下websocket,須要裝個ws模塊,因而就去裝了。我知道還有其餘模塊實現,反正我就選了這個去實驗。node
關於centos裝nodejs請參考這文章:http://stackoverflow.com/questions/20028996/how-to-install-node-binary-distribution-files-on-linux ,用的是Amin Meyghani的回覆方法。
linux
一開始固然是不成功的,發現有個關鍵提示:c++
../node_modules/nan/nan.h:41:3: error: #error This version of node/NAN/v8 requires a C++11 compiler
搜索了下發現C++11須要gcc 4.7以上,系統默認的是4.4.7.不合要求。web
下面正確裝ws模塊的節奏:
shell
step 0:npm
升級 gcc 到4.7以上,參考:http://superuser.com/questions/381160/how-to-install-gcc-4-7-x-4-8-x-on-centos centos
不過我裝的是devtools-2,一個不新不舊的版本。websocket
cd /etc/yum.repos.d wget http://people.centos.org/tru/devtools-2/devtools-2.repo yum --enablerepo=testing-2-devtools-6 install devtoolset-2-gcc devtoolset-2-gcc-c++
2.0的安裝好位置在:
socket
/opt/rh/devtoolset-2/root/usr/bin/
注意不是1.1的:ui
/opt/centos/devtoolset-1.1/root/usr/bin/
相應export環境變量也改爲:
export CC=/opt/rh/devtoolset-2/root/usr/bin/gcc export CPP=/opt/rh/devtoolset-2/root/usr/bin/cpp export CXX=/opt/rh/devtoolset-2/root/usr/bin/c++
gcc升級完成。這時運行gcc -v仍舊顯示 4.4.7,應該是path沒改,但這樣也不影響node-gyp編譯,就沒理會它。
step 1:
裝ws模塊
npm install -g ws
ws模塊編譯經過,安裝成功。
Done,能夠愉快的使用ws了