在pkg-config搜索路径中找不到包cairo.Node js安装canvas问题

pli*_*mbs 91 terminal canvas cairo node.js

我在安装在节点中安装canvas模块时遇到问题.它似乎与cairo有关我收到此错误...

npm http GET https://registry.npmjs.org/canvas
npm http 304 https://registry.npmjs.org/canvas
npm http GET https://registry.npmjs.org/nan
npm http 304 https://registry.npmjs.org/nan

> canvas@1.1.3 install /Users/plimb/Desktop/motion-therapy/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_cairo_freetype.sh' returned exit status 0. 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/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:424:16)
gyp ERR! stack     at ChildProcess.EventEmitter.emit (events.js:98:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:789:12)
gyp ERR! System Darwin 13.0.0
gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/plimb/Desktop/motion-therapy/node_modules/canvas
gyp ERR! node -v v0.10.21
gyp ERR! node-gyp -v v0.10.10
gyp ERR! not ok
npm ERR! weird error 1 
npm ERR! not ok code 0
Run Code Online (Sandbox Code Playgroud)

我不确定这一切意味着什么!非常感谢任何帮助!例如如何在pkg_config_path环境变量中使用mkdir cairo pc?

Hen*_*Hey 123

有同样的问题,@ Epistemex的链接帮助我排除故障.

...您需要安装libcairo2-dev,libjpeg-devlibgif-dev包...

sudo apt-get install libcairo2-dev libjpeg-dev libgif-dev
Run Code Online (Sandbox Code Playgroud)

  • 我还需要pangocairo包,用`sudo apt-get install libpango1.0-dev`解决 (5认同)
  • `cairo-devel``libjpeg-devel`和`giflib-devel`是Amazon Linux软件包.@Max (5认同)
  • @AdlenAfane 评论与那些想要安装“manim”的人确实相关。 (2认同)

Piy*_*iya 62

我在mac上也面临同样的问题,所以我尝试了这些步骤,我得到了解决方案

Mac OSX版本> = 10.7.5节点-v = v0.8.12

$ brew install cairo
$ pkg-config --atleast-version=1.12.2 cairo
$ echo $?
Run Code Online (Sandbox Code Playgroud)

如果返回1,则需要设置PKG_CONFIG_PATH环境变量,以便找到cairo.pc和fontconfig.pc

$ locate cairo.pc
$ export PKG_CONFIG_PATH=/usr/X11/lib/pkgconfig/
Run Code Online (Sandbox Code Playgroud)

再次运行pkg-config ...

$ pkg-config --atleast-version=1.12.2 cairo

$ echo $?
Run Code Online (Sandbox Code Playgroud)

如果它返回0那么一切都很好.

$ npm install canvas
Run Code Online (Sandbox Code Playgroud)

  • 谢谢..你的解决方案工作..很棒:) (3认同)

Ale*_*lov 31

在安装qrcode软件包时OS X 10.11.2上存在同样的问题.

通过安装这些解决:

brew install cairo
brew install pkg-config
xcode-select --install
Run Code Online (Sandbox Code Playgroud)

  • 在我的案例中只有`brew install cairo`就足够了(macOS Sierra 10.12.1) (4认同)
  • 它看起来像'brew install cairo`也自动安装`pkg-config` (2认同)

小智 13

如果有人仍然遇到此问题并找到此页面,则以下适用于CentOS 6.6:

sudo yum install cairo cairo-devel
Run Code Online (Sandbox Code Playgroud)

基本上解决方案是您需要安装开发包以及常规包(这里最好的答案是相同的 - 除了Ubuntu - 每个发行版可以不同).


Yas*_*aka 8

我遵循了@Piyush 给出的步骤。但我需要一个额外的步骤来使它工作。我使用的是 OS X 10.14.5

所以这就是我遵循的。

brew install pkg-config
brew install cairo
pkg-config --atleast-version=1.12.2 cairo
export PKG_CONFIG_PATH=/usr/X11/lib/pkgconfig/
export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}:/usr/local/opt/libffi/lib/pkgconfig"
npm install canvas
Run Code Online (Sandbox Code Playgroud)


小智 6

对于 Ubuntu,这些是命令。另外,这是参考

$ sudo apt-get update 
$ sudo apt-get install build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev 
Run Code Online (Sandbox Code Playgroud)


Ach*_*rma 5

在 Mac 上试试这个:

brew install pkg-config cairo pango libpng jpeg giflib
Run Code Online (Sandbox Code Playgroud)