在pkg-config搜索路径中找不到包cairo

zab*_*mba 16 macos homebrew cairo

在Mac OS X 1.7.5/Lion上

我正在尝试使用自制软件安装cairo包

brew install cairo => PASSED

==> Downloading http://cairographics.org/releases/cairo-1.12.16.tar.xz
Already downloaded: /Library/Caches/Homebrew/cairo-1.12.16.tar.xz
==> ./configure --prefix=/usr/local/Cellar/cairo/1.12.16 --with-x --enable-gobject=yes
==> make install
==> Caveats
This formula is keg-only: so it was not symlinked into /usr/local.

Mac OS X already provides this software in versions before Mountain Lion.

Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:

    LDFLAGS:  -L/usr/local/opt/cairo/lib
    CPPFLAGS: -I/usr/local/opt/cairo/include

==> Summary
  /usr/local/Cellar/cairo/1.12.16: 105 files, 8.0M, built in 2.5 minutes
Run Code Online (Sandbox Code Playgroud)

当我尝试编译我的代码时,我仍然得到这个:

+++ Precompile
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
Package 'cairo', required by 'pangocairo', not found
Run Code Online (Sandbox Code Playgroud)

所以我相应地调整了我的PKG_CONFIG_PATH

 PKG_CONFIG_PATH=/usr/local/opt/cairo/lib/pkgconfig/:/usr/local/lib/pkgconfig:/usr/X11/lib/pkgconfig/:
Run Code Online (Sandbox Code Playgroud)

(来源.bash_profile)

试图再次编译,但我得到完全相同的错误.

验证该文件存在于该pkgconfig目录中......它是.

ls /usr/local/opt/cairo/lib/pkgconfig/ 
cairo-fc.pc           cairo-gobject.pc      cairo-png.pc          cairo-quartz-font.pc  cairo-script.pc       cairo-xcb-shm.pc      cairo-xlib-xrender.pc cairo.pc
cairo-ft.pc           cairo-pdf.pc          cairo-ps.pc           cairo-quartz.pc       cairo-svg.pc          cairo-xcb.pc          cairo-xlib.pc
Run Code Online (Sandbox Code Playgroud)

这里出了什么问题导致什么?

UPDATE

cairo.pc位于我系统的太多位置.我尝试在我的pgg配置路径中使用每个位置但没有成功

find /usr -name cairo.pc 
/usr/local/Cellar/cairo/1.12.16/lib/pkgconfig/cairo.pc
/usr/X11/lib/pkgconfig/cairo.pc

pkg-config --variable pc_path pkg-config
/usr/local/lib/pkgconfig:/usr/local/share/pkgconfig:/usr/lib/pkgconfig
Run Code Online (Sandbox Code Playgroud)

Mil*_*ric 11

注意:仅适用于Ubuntu.

解决我的问题更容易.Ubuntu依赖项未正确安装,您可以在此处找到说明:

https://github.com/LearnBoost/node-canvas/wiki

这对我有用:

sudo apt-get install libcairo2-dev libjpeg8-dev libpango1.0-dev libgif-dev build-essential g++
Run Code Online (Sandbox Code Playgroud)

  • apt-get 不适用于 Mac (3认同)
  • 当你投票时,请留下关于什么不起作用的评论,这样我们就可以改进答案.简单的downvoting对任何人都没用. (2认同)
  • 是的,对于 mac 我不知道,但我想它要么可以安装这些库的等效项,要么问题完全不同。 (2认同)

zab*_*mba 6

ln -s /usr/local/Cellar/cairo/1.12.16/lib/pkgconfig/cairo.pc /usr/local/lib/pkgconfig/cairo.pc

解决了我的问题