【问题标题】:node-gyp build error on centoscentos上的node-gyp构建错误
【发布时间】:2015-02-10 07:59:49
【问题描述】:

我正在使用安装在服务器上的 Centos 6.6 并尝试使用 node-gyp,但是当我使用命令 node-gyp build 时出现错误,我使用的 python 版本是 2.7.8 和 GCC C++ 编译器。我得到的错误如下所述。

 # node-gyp build
gyp info it worked if it ends with ok
gyp info using node-gyp@1.0.2
gyp info using node@0.10.35 | linux | x64
gyp info spawn make
gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
make: Entering directory `/root/build'
make: *** No rule to make target `Release/obj.target/binding/src/binding.o', 
needed by `Release/obj.target/binding.node'.  Stop.
make: Leaving directory `/root/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/node-
gyp/lib/build.js:267:23)
gyp ERR! stack     at ChildProcess.emit (events.js:98:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit 
(child_process.js:820:12)
gyp ERR! System Linux 2.6.32-504.3.3.el6.x86_64
gyp ERR! command "node" "/usr/local/bin/node-gyp" "build"
gyp ERR! cwd /root
gyp ERR! node -v v0.10.35
gyp ERR! node-gyp -v v1.0.2
gyp ERR! not ok

【问题讨论】:

  • 你试过node-gyp rebuild吗?这基本上与node-gyp configure && node-gyp build 相同。
  • 我得到以下错误:输入目录/root/build' make: *** No rule to make target Release/obj.target/binding/src/binding.o',需要Release/obj.target/binding.node'. Stop. make: Leaving directory /root/build'
  • gyp 错误!构建错误 gyp ERR!堆栈错误:make 失败,退出代码:2 gyp ERR! ChildProcess.onExit (/usr/local/lib/node_modules/node-gyp/lib/build.js:267:23) 的堆栈 gyp 错误! ChildProcess.emit (events.js:98:17) 的堆栈 gyp ERR!堆栈在 Process.ChildProcess._handle.onexit (child_process.js:820:12) gyp ERR!系统 Linux 2.6.32-504.3.3.el6.x86_64 gyp 错误!命令“节点”“/usr/local/bin/node-gyp”“重建”gyp ERR! cwd /root gyp 错误!节点 -v v0.10.35 gyp 错误!节点-gyp -v v1.0.2 gyp 错误!不行
  • 我什至尝试了 sudo node-gyp build 和 sudo node-gyp rebuild 但我得到了同样的错误
  • 您是否在项目的根目录中执行node-gyp rebuildbinding.gyp 所在的位置?

标签: python c++ linux node.js


【解决方案1】:

需要更新node-gyp:sudo npm update -g node-gyp

【讨论】:

    【解决方案2】:

    我已经用 devTool 安装了更新的 g++

    sudo yum install --skip-broken devtoolset-3
    sudo yum install devtoolset-3-gcc-c++
    sudo source /opt/rh/devtoolset-3/enable

    然后它就起作用了! ;)

    sudo npm --loglevel verbose --unsafe-perm i ursa

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-17
      • 2014-02-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-28
      • 1970-01-01
      相关资源
      最近更新 更多