パッケージcairoがpkg-config検索パスで見つかりませんでした。ノードjsインストールキャンバスの問題


101

ノードにキャンバスモジュールをインストールする際に問題が発生します。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

どういう意味かわかりません!たとえば、pkg_config_path環境変数でmkdir cairo pcを実行する方法はありますか?


これが役立つかどうかを確認してください:github.com/LearnBoost/node-canvas/issues/225

ああありがとうケン、私はこれに従いましたが、今私はこのエラーを持っていますCanvas.h:19:10:致命的なエラー: 'cairo / cairo.h'ファイルが見つかりません#include <cairo / cairo.h>
14

回答:


135

同じ問題があり、@ Epistemexのリンクがトラブルシューティングに役立ちました。

...あなたがインストールする必要がありlibcairo2-devlibjpeg-devそしてlibgif-devパッケージ...

sudo apt-get install libcairo2-dev libjpeg-dev libgif-dev

5
私も解決したpangocairoパッケージが必要でしたsudo apt-get install libpango1.0-dev
Adlen Afane '27

これはdebianではないため、amzon ec2インスタンスでは機能しませんか?誰もがこのためのyumコマンドを知っている
Max

5
cairo-devel libjpeg-develそして、giflib-develアマゾンLinuxパッケージです。@Max
スティーブン

68

Macでも同じ問題に直面していたので、これらの手順を試してみましたが解決策がありました

Mac OSXバージョン> = 10.7.5ノード-v = v0.8.12

$ brew install cairo
$ pkg-config --atleast-version=1.12.2 cairo
$ echo $?

1を返す場合は、PKG_CONFIG_PATH環境変数を設定してcairo.pcおよびfontconfig.pcを見つける必要があります。

$ locate cairo.pc
$ export PKG_CONFIG_PATH=/usr/X11/lib/pkgconfig/

pkg-configを再度実行しています...

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

$ echo $?

それが0を返す場合、すべてが正常に行われています。

$ npm install canvas

1
詳細をご覧ください。いいね。
neelmeg 2016

1
Mac / brewを使用しているポインタに感謝します。Macでは、使用している場合macports、これは私にとってはうまくいきました:$ sudo port install cairo $ sudo port install pkgconfig#これは必須ではありません...:/ $ npm install canvas
DerekC

32

インストール中にOS X 10.11.2で同じ問題がありました qrcodeパッケージの。

これらのものをインストールすることで解決:

brew install cairo
brew install pkg-config
xcode-select --install

4
のみ、brew install cairo私の場合には十分であった(MacOSのシエラ10.12.1)
sakisk

1
macOS Sierra 10.12(回復済み)の最新のインストールでbrew install cairo十分であることが確認されました。
Kulbear 2017年

2
brew install cairo自動インストールのpkg-configようにも見えます
jacoballenwood 2017年

14

誰かがまだこの問題を抱えていて、このページを見つけた場合、CentOS 6.6では次のように動作します。

sudo yum install cairo cairo-devel

基本的に解決策は、通常のパッケージと同様に開発パッケージをインストールする必要があることです(ここでの最良の答えは同じことです-Ubuntuを除いて-すべてのディストリビューションは異なる場合があります)。


5

私は@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


3

apt-getを使用すれば、受け入れられた答えは問題ありません。YUM / DNFユーザー(Fedora、CentOS、その他のRHELのようなシステム)の場合、以下を使用します

yum install cairo cairo-devel cairomm-devel libjpeg-turbo-devel pango pango-devel pangomm pangomm-devel

2

私がこの問題に遭遇したときの問題はpkg-config、私のパス上のバージョンが、自作でインストールされたバージョンではなく、chefdkによって提供されたバージョンであることでした。

$ which pkg-config
/usr/local/bin/pkg-config

$ eval "$(chef shell-init bash)"
$ which pkg-config
/opt/chefdk/embedded/bin/pkg-config

解決策はeval "$(chef shell-init bash)"、私のbashプロファイルからエントリを削除することでした。

Githubでのchefdkのパス生成における問題の詳細https://github.com/chef/chef-dk/issues/313


1

OSX 10.10.4にpkg-configをインストールするだけです

brew install pkg-config


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.