首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >启动Meteor应用时,如何修复Meteor包使用的npm包编译错误?

启动Meteor应用时,如何修复Meteor包使用的npm包编译错误?
EN

Stack Overflow用户
提问于 2016-08-25 13:58:21
回答 4查看 647关注 0票数 0

Meteor应用程序myapp使用Meteor包mypackage,后者使用npm包pingan-payment

当我用meteor启动"myapp“时,mypackage尝试编译pingan-payment。但在编译它的一个依赖项libxmljs时失败

代码语言:javascript
复制
$ 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,但没有。

如何调试和修复错误?

EN

回答 4

Stack Overflow用户

发布于 2016-08-25 21:05:11

您的错误转储显示您使用的是旧版本的meteor-tool包。您应该考虑将Meteor (meteor update)更新到更新的版本,因为最近有一个专门针对node-gyp集成的number of improvements

票数 0
EN

Stack Overflow用户

发布于 2016-08-26 10:52:53

在为libxmljs编译libxml时,您缺少系统包。当你有一个普通的操作系统时,通常会发生这个特殊的错误。

请尝试执行以下命令:

代码语言:javascript
复制
apt-get install libxml2-dev
票数 0
EN

Stack Overflow用户

发布于 2016-12-26 10:41:15

您需要安装apt-get install g++ libtool libxml2-dev libxml2

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39137673

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档