我是节点的新手,有点超出我的深度。在Mac OS X和Centos 6上遇到此错误。在我试过的所有npm install xxx命令中都会出现这种情况。关于如何解决这个错误的任何建议都非常赞赏。
与npm install gives node-gyp error类似,但我的用户名中没有空格,这解决了他的问题。
npm install canvas
> canvas@1.6.6 install /home/test1/ng2-webpack-demo/node_modules/canvas
> node-gyp rebuild
Package cairo was not found in the pkg-config search path.
Perhaps you should add the directory containing `cairo.pc'
to the PKG_CONFIG_PATH environment variable
No package 'cairo' found
gyp: Call to './util/has_lib.sh freetype' returned exit status 0 while in
binding.gyp. while trying to load binding.gyp
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack at ChildProcess.onCpExit
(/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:336:16)
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:215:12)
gyp ERR! System Linux 2.6.32-642.4.2.el6.x86_64
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-
gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/test1/ng2-webpack-demo/node_modules/canvas
gyp ERR! node -v v6.11.1
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm WARN @angular/animations@4.3.6 requires a peer of @angular/core@4.3.6 but
none was installed.
npm WARN @angular/material@2.0.0-beta.8 requires a peer of @angular/cdk@2.0.0-
beta.8 but none was installed.
npm WARN @angular/material@2.0.0-beta.8 requires a peer of
@angular/core@^4.0.0 but none was installed.
npm WARN @angular/material@2.0.0-beta.8 requires a peer of
@angular/common@^4.0.0 but none was installed.
npm WARN @ngtools/webpack@1.2.10 requires a peer of @angular/tsc-
wrapped@^0.5.0 but none was installed.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.2
(node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for
fsevents@1.1.2: wanted {"os":"darwin","arch":"any"} (current:
{"os":"linux","arch":"x64"})
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! canvas@1.6.6 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the canvas@1.6.6 install script.
npm ERR! This is probably not a problem with npm. There is likely additional
logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/test1/.npm/_logs/2017-08-29T15_54_58_848Z-debug.log
答案 0 :(得分:2)
这是一个已知的画布问题,可能是由于缺少原生库而引起的 试试这个看看是否有帮助:
sudo npm uninstall -g node-gyp
sudo npm install -g node-gyp
brew install pkg-config cairo libpng jpeg giflib
npm i canvas
来源:https://github.com/Automattic/node-canvas/issues/913#issuecomment-368042394
答案 1 :(得分:1)
我有同样的错误,原因是我没有安装 clang 编译器。 我的解决方案是安装 build-essential 包
sudo apt-get install build-essential
我使用的是 Ubuntu 20.1 版本