Пакет cairo не найден в пути поиска pkg-config. Узел JS установить выпуск холста
У меня возникла проблема с установкой модуля canvas в узле.. Кажется, что-то с Каиром Я получаю эту ошибку...
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
Я не уверен, что все это значит! Буду признателен за любую помощь! Например, как для mkdir cairo pc в переменной окружения pkg_config_path?
10 ответов
Была та же проблема, и ссылка @Epistemex помогла мне устранить ее.
... нужно установить
libcairo2-dev
,libjpeg-dev
а такжеlibgif-dev
пакеты...
sudo apt-get install libcairo2-dev libjpeg-dev libgif-dev
Я также столкнулся с той же проблемой на 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
Была такая же проблема на OS X 10.11.2 при установке qrcode
пакет.
Решено путем установки этих:
brew install cairo
brew install pkg-config
xcode-select --install
Если кто-то все еще имеет эту проблему и нашел эту страницу, для CentOS 6.6 работает следующее:
sudo yum install cairo cairo-devel
В основном решение состоит в том, что вам нужно установить пакет разработки, а также обычный пакет (лучший ответ здесь делает то же самое - за исключением Ubuntu - каждый дистрибутив может отличаться).
Я следовал инструкциям @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
Для Ubuntu это команды. Также вот ссылка.
$ sudo apt-get update
$ sudo apt-get install build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev
Попробуйте это на Mac:
brew install pkg-config cairo pango libpng jpeg giflib
Принятый ответ просто отлично, если вы используете apt-get. Для пользователей YUM/DNF (Fedora, CentOS, другие RHEL-подобные системы) используйте следующее
yum install cairo cairo-devel cairomm-devel libjpeg-turbo-devel pango pango-devel pangomm pangomm-devel
Когда я столкнулся с этой проблемой, проблема заключалась в том, что версия 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.
Более подробное обсуждение проблемы создания пути chefdk на Github https://github.com/chef/chef-dk/issues/313
Мне просто нужно было установить pkg-config на OSX 10.10.4
brew install pkg-config