失败到npm安装nanomsg

时间:2016-06-22 09:35:59

标签: node.js npm npm-install nanomsg

我尝试在linux机器上安装nanomsg所以

  

npm install nanomsg --python = python2.7

我使用--python=python2.7选项,因为我有两个不同版本的python。但是,该命令失败并出现此类错误消息

make: Entering directory `/qt_home/{my_username}/node_modules/nanomsg/build'
  CC(target) Release/obj.target/nanomsg/deps/nanomsg/src/aio/ctx.o
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
make: *** [Release/obj.target/nanomsg/deps/nanomsg/src/aio/ctx.o] Error 1
make: Leaving directory `/qt_home/{my_username}/node_modules/nanomsg/build'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:270:23)
gyp ERR! stack     at emitTwo (events.js:106:13)
gyp ERR! stack     at ChildProcess.emit (events.js:191:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:204:12)
gyp ERR! System Linux 2.6.18-409.el5
gyp ERR! command "/usr/local/bin/node" "/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /qt_home/{my_username}/node_modules/nanomsg
gyp ERR! node -v v6.2.2
gyp ERR! node-gyp -v v3.0.3
gyp ERR! not ok 
npm ERR! Linux 2.6.18-409.el5
npm ERR! argv "/bin/node" "/bin/npm" "install" "nanomsg" "--python=python2.7"
npm ERR! node v4.2.1
npm ERR! npm  v2.14.7
npm ERR! code ELIFECYCLE

npm ERR! nanomsg@3.2.0 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the nanomsg@3.2.0 install script 'node-gyp rebuild'.
npm ERR! This is most likely a problem with the nanomsg package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild
npm ERR! You can get their info via:
npm ERR!     npm owner ls nanomsg
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /qt_home/{my_username}/npm-debug.log

我在互联网上搜索过这个,但找不到任何有用的东西。到目前为止我找到了this link,但它对我没有帮助。

我的node js版本为6.2.2,npm版本为2.14.7。

有任何想法或建议吗?

2 个答案:

答案 0 :(得分:0)

您是否尝试过使用sudo进行安装。有时它需要某些部分。

sudo npm install nanomsg --python=python2.7

我也不太熟悉Python但是你可以添加直接路径而不是python2.7

sudo npm install nanomsg --python=/usr/bin/python2.7

答案 1 :(得分:0)

错误消息

  

cc1:错误:无法识别的命令行选项   " -Wno-也许-未初始化"

表示您的编译器不支持选项-Wno-maybe-uninitialized

用于构建de nanomsg librairie的编译器选项在linux.gypi中定义。

'cflags': [
'-O3', '-Wall', '-Wextra', '-Wno-sign-compare', '-Wno-strict-aliasing',
'-Wno-unused', '-Wno-char-subscripts', '-Wno-maybe-uninitialized',
'-Wno-implicit-function-declaration', '-lpthread',
],

为了使用nanomsg configure根据编译器构建它,你可以这样继续:

git clone https://github.com/nanomsg/nanomsg
cd nanomsg
./configure
cmake .
make 
sudo make install
sudo cp /usr/local/lib/pkgconfig/naming.pc /usr/local/lib/pkgconfig/libnaming.pc 

接下来你应该可以运行:

npm install nanomsg --use_system_libnanomsg=true