普段から OS Xのパッケージ管理には Homebrew を使っています。
Homebrew に含まれる一部パッケージ(pango)のバージョンを変えてインストールする必要があり、自分でビルドしてみようと思ったところすっかりはまってしまいました。
発生した症状
Homebrew でインストールしたパッケージ(cairo)に依存している箇所でエラーになってしまいました。
具体的には ./configure の実行中に pkg-config で依存しているパッケージの.pc ファイルが存在しないと怒られています。
# config.log pkg-config --cflags --print-errors cairo Package xcb-shm was not found in the pkg-config search path. Perhaps you should add the directory containing `xcb-shm.pc' to the PKG_CONFIG_PATH environment variable Package 'xcb-shm', required by 'cairo', not found
解決するには?
エラーメッセージどおり、環境変数 PKG_CONFIG_PATHの通るところに .pc ファイルを配置するか、環境変数にパスを追加して再実行することで解決しました。
PKG_CONFIG_PATHが空の場合のデフォルトは
/usr/local/lib/pkgconfig
です。
今回は /opt/X11/lib/pkgconfig/ の中に依存している .pcファイルがあったので、パス追加で対応しました。
$ export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/opt/X11/lib/
再実行し、エラーが出なくなるのを確認します。
$ pkg-config --cflags --print-errors cairo
あとは通常通り、./configure, make などを実行すればOKです。
OS X では(Homebrewでは?) X11 関係の pkgconfigのパッケージ情報ファイル(.pcファイル)は /opt/X11/lib/pkgconfig/ にあるのですね。