Meteor应用程序myapp
使用Meteor软件包mypackage
,它使用npm软件包pingan-payment
。
当我开始" myapp"使用meteor
,mypackage
尝试编译pingan-payment
。但是在编译其中一个依赖项libxmljs
时失败了:
$ meteor
[[[[[ ~/temp/myapp ]]]]]
=> Started proxy.
myorg:mypackage: updating npm dependencies -- pingan-payment, dateformat, request, urllib...
=> Errors prevented startup:
While building package myorg:mypackage:
error: couldn't install npm packages from npm-shrinkwrap: Command failed: npm WARN package.json packages-for-meteor-smartpackage-16ai9vy@0.0.0 No
description
npm WARN package.json packages-for-meteor-smartpackage-16ai9vy@0.0.0 No repository field.
npm WARN package.json packages-for-meteor-smartpackage-16ai9vy@0.0.0 No README data
../vendor/libxml/encoding.c: In function ‘xmlCharEncCloseFunc’:
../vendor/libxml/encoding.c:2856:12: warning: variable ‘handler_in_list’ set but not used [-Wunused-but-set-variable]
int i, handler_in_list = 0;
^
In file included from ../vendor/libxml/xpath.c:462:0:
../vendor/libxml/timsort.h: In function ‘libxml_domnode_tim_sort_collapse’:
../vendor/libxml/timsort.h:405:65: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if ((stack_curr == 2) && (stack[0].length + stack[1].length == size)) {
^
../vendor/libxml/timsort.h:397:19: warning: variable ‘BD’ set but not used [-Wunused-but-set-variable]
int ABC, BCD, BD, CD;
^
../vendor/libxml/xpath.c: In function ‘xmlXPathNodeCollectAndTest’:
../vendor/libxml/xpath.c:12406:28: warning: comparison between ‘xmlElementType {aka enum <anonymous>}’ and ‘xmlXPathTypeVal {aka enum <anonymous>}’
[-Wenum-compare]
} else if (cur->type == type) {
^
In file included from ../vendor/libxml/xpath.c:476:0:
../vendor/libxml/xpath.c: At top level:
../vendor/libxml/trionan.c:194:1: warning: ‘trio_is_special_quantity’ defined but not used [-Wunused-function]
trio_is_special_quantity
^
../vendor/libxml/trionan.c:218:1: warning: ‘trio_is_negative’ defined but not used [-Wunused-function]
trio_is_negative
^
../vendor/libxml/xpointer.c: In function ‘xmlXPtrNewRangeNodePoint’:
../vendor/libxml/xpointer.c:451:21: warning: comparison between ‘xmlElementType {aka enum <anonymous>}’ and ‘enum <anonymous>’
[-Wenum-compare]
if (start->type != XPATH_POINT)
^
../src/libxmljs.cc:3:16: fatal error: v8.h: No such file or directory
compilation terminated.
make: *** [Release/obj.target/xmljs/src/libxmljs.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit
(/home/leo/.meteor/packages/meteor-tool/.1.1.9.30iceu++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/dev_bundle/lib/node_modules/npm/n$
de_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 4.4.0-31-generic
gyp ERR! command "node"
"/home/leo/.meteor/packages/meteor-tool/.1.1.9.30iceu++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/dev_bundle/lib/node_modules/npm/n$
de_modules/node-gyp/bin/node-gyp.js"
"rebuild"
gyp ERR! cwd
/home/leo/temp/myapp/packages/mypackage/.npm/package-new-zx4ald/node_modules/pingan-payment/node_modules/libxmljs
gyp ERR! node -v v0.10.40
gyp ERR! node-gyp -v v1.0.1
gyp ERR! not ok
npm ERR! libxmljs@0.18.0 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the libxmljs@0.18.0 install script.
npm ERR! This is most likely a problem with the libxmljs 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 libxmljs
npm ERR! There is likely additional logging output above.
npm ERR! System Linux 4.4.0-31-generic
npm ERR! command
"/home/leo/.meteor/packages/meteor-tool/.1.1.9.30iceu++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/dev_bundle/bin/node"
"/home/leo/.meteor/packages/meteor-tool/.1.1.9.30iceu++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/dev_bundle/bin/npm" "install"
npm ERR! cwd /home/leo/temp/myapp/packages/mypackage/.npm/package-new-zx4ald
npm ERR! node -v v0.10.40
npm ERR! npm -v 1.4.28
npm ERR! code ELIFECYCLE
npm ERR! not ok code 0
npm WARN package.json packages-for-meteor-smartpackage-16ai9vy@0.0.0 No description
npm WARN package.json packages-for-meteor-smartpackage-16ai9vy@0.0.0 No repository field.
npm WARN package.json packages-for-meteor-smartpackage-16ai9vy@0.0.0 No README data
../vendor/libxml/encoding.c: In function ‘xmlCharEncCloseFunc’:
../vendor/libxml/encoding.c:2856:12: warning: variable ‘handler_in_list’ set but not used [-Wunused-but-set-variable]
int i, handler_in_list = 0;
^
In file included from ../vendor/libxml/xpath.c:462:0:
../vendor/libxml/timsort.h: In function ‘libxml_domnode_tim_sort_collapse’:
../vendor/libxml/timsort.h:405:65: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if ((stack_curr == 2) && (stack[0].length + stack[1].length == size)) {
^
../vendor/libxml/timsort.h:397:19: warning: variable ‘BD’ set but not used [-Wunused-but-set-variable]
int ABC, BCD, BD, CD;
^
../vendor/libxml/xpath.c: In function ‘xmlXPathNodeCollectAndTest’:
../vendor/libxml/xpath.c:12406:28: warning: comparison between ‘xmlElementType {aka enum <anonymous>}’ and ‘xmlXPathTypeVal {aka enum <anonymous>}’
[-Wenum-compare]
} else if (cur->type == type) {
^
In file included from ../vendor/libxml/xpath.c:476:0:
../vendor/libxml/xpath.c: At top level:
../vendor/libxml/trionan.c:194:1: warning: ‘trio_is_special_quantity’ defined but not used [-Wunused-function]
trio_is_special_quantity
^
../vendor/libxml/trionan.c:218:1: warning: ‘trio_is_negative’ defined but not used [-Wunused-function]
trio_is_negative
^
../vendor/libxml/xpointer.c: In function ‘xmlXPtrNewRangeNodePoint’:
../vendor/libxml/xpointer.c:451:21: warning: comparison between ‘xmlElementType {aka enum <anonymous>}’ and ‘enum <anonymous>’
[-Wenum-compare]
if (start->type != XPATH_POINT)
^
../src/libxmljs.cc:3:16: fatal error: v8.h: No such file or directory
compilation terminated.
make: *** [Release/obj.target/xmljs/src/libxmljs.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit
(/home/leo/.meteor/packages/meteor-tool/.1.1.9.30iceu++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/dev_bundle/lib/node_modules/npm/no
de_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 4.4.0-31-generic
gyp ERR! command "node"
"/home/leo/.meteor/packages/meteor-tool/.1.1.9.30iceu++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/dev_bundle/lib/node_modules/npm/no
de_modules/node-gyp/bin/node-gyp.js"
"rebuild"
gyp ERR! cwd
/home/leo/temp/myapp/packages/mypackage/.npm/package-new-zx4ald/node_modules/pingan-payment/node_modules/libxmljs
gyp ERR! node -v v0.10.40
gyp ERR! node-gyp -v v1.0.1
gyp ERR! not ok
npm ERR! libxmljs@0.18.0 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the libxmljs@0.18.0 install script.
npm ERR! This is most likely a problem with the libxmljs 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 libxmljs
npm ERR! There is likely additional logging output above.
npm ERR! System Linux 4.4.0-31-generic
npm ERR! command
"/home/leo/.meteor/packages/meteor-tool/.1.1.9.30iceu++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/dev_bundle/bin/node"
"/home/leo/.meteor/packages/meteor-tool/.1.1.9.30iceu++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/dev_bundle/bin/npm" "install"
npm ERR! cwd /home/leo/temp/myapp/packages/mypackage/.npm/package-new-zx4ald
npm ERR! node -v v0.10.40
npm ERR! npm -v 1.4.28
npm ERR! code ELIFECYCLE
npm ERR! not ok code 0
=> Your application has errors. Waiting for file change.
我在上面的错误消息中搜索了~/temp/myapp
和~/.meteor
文件../vendor/libxml/encoding.c
,但是没有。
如何调试和修复错误?
答案 0 :(得分:0)
您的错误转储显示您使用的是旧版meteor-tool
包。您应该考虑将Meteor(meteor update
)更新为更新版本,因为最近有number of improvements专门围绕node-gyp
集成。
答案 1 :(得分:0)
在为libxml
编译libxmljs
时,您缺少系统包。当您拥有一个普通操作系统时,通常会发生此特定错误。
请尝试以下命令:
apt-get install libxml2-dev
答案 2 :(得分:0)
你需要安装 apt-get install g ++ libtool libxml2-dev libxml2
答案 3 :(得分:0)
我昨天遇到了同样的v8.h: No such file or directory
错误,原因可能是我使用nvm运行节点v6.x但系统的节点是v0.10而libxmljs有点使用错误的node-gyp来编译它的代码。因此,在根据https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-ubuntu-16-04将系统节点更新到v6.x后,模块正确编译。