ubuntu npm使用node-expat build安装lib错误

时间:2016-03-26 09:47:30

标签: python node.js ubuntu npm node-expat

我试图在Ubutun 14.04上通过npm安装office lib。它不起作用。我使用Node:v4.4.0,npm:v.2.14.20和python:v2.6.9

运行npm install office后,我得到以下输出:

make: *** [Release/obj.target/node_expat/node-expat.o] Error 1
make: Leaving directory `/home/apps/lsb.gorillab.co/node_modules/office/node_modul                                                          es/xml2json/node_modules/node-expat/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/                                                          node-gyp/lib/build.js:276:23)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.                                                          js:200:12)
gyp ERR! System Linux 3.13.0-83-generic
gyp ERR! command "/usr/bin/nodejs" "/usr/lib/node_modules/npm/node_modules/node-gy                                                          p/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/apps/lsb.gorillab.co/node_modules/office/node_modules/xml2json/                                                          node_modules/node-expat
gyp ERR! node -v v4.4.0
gyp ERR! node-gyp -v v3.3.0
gyp ERR! not ok
npm info node-expat@2.0.0 Failed to exec install script
npm ERR! Linux 3.13.0-83-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install" "-d" "office"
npm ERR! node v4.4.0
npm ERR! npm  v2.14.20
npm ERR! code ELIFECYCLE

npm ERR! node-expat@2.0.0 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-expat@2.0.0 install script 'node-gyp rebuild'.
npm ERR! This is most likely a problem with the node-expat 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 information on how to open an issue for this project with:
npm ERR!     npm bugs node-expat
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!
npm ERR!     npm owner ls node-expat
npm ERR! There is likely additional logging output above.
npm info preuninstall node-expat@2.0.0
npm info uninstall node-expat@2.0.0
npm info postuninstall node-expat@2.0.0
npm info preuninstall xml2json@0.3.2
npm info uninstall xml2json@0.3.2
npm info postuninstall xml2json@0.3.2
npm info preuninstall office@0.0.8
npm info uninstall office@0.0.8
npm info postuninstall office@0.0.8

npm ERR! Please include the following file with any support request:
npm ERR!     /home/apps/lsb.gorillab.co/npm-debug.log

非常感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:1)

问题是安装的node-expat版本太旧而无法支持节点v4 +。对于节点v4 +兼容性,需要更新的版本,例如v2.3.13(这是本文撰写时的最新版本)。

由于在这种情况下node-expat作为依赖项安装,因此您需要沿着依赖关系树向上移动并让每个模块的维护者在适当的时候更新其依赖关系,从xml2json开始然后再转到{ {1}}。但是,在这种特殊情况下,似乎office已经引入了较新版本的xml2json,并且node-expat需要更新其office依赖项。遗憾的是,xml2json模块在​​2年内未更新,因此如果您想使用该模块,您可能需要自行分叉并自行更新依赖项。