brew でインストールした imagemagick で rmagick のビルドが失敗したので回避する

brew で imagemagick を入れたのに、rmagick のビルドがこけてしまいました。

brew install imagemagick # 6.8.0-10 が入った。

これで rmagick を入れる(厳密には Gemfile に gem ‘rmagick’ を書いて bundle)とビルドでエラーが出て止まってしまいます。

checking for InitializeMagick() in -lMagickCore... no
checking for InitializeMagick() in -lMagick... no
checking for InitializeMagick() in -lMagick++... no

ココらへんがダメそうです。見つからないらしいです。

回避する方法

同じ問題が議論されていました。

  • https://github.com/rmagick/rmagick/issues/60

いろいろ方法があるみたいですが、以下で解決したのでこれで行きます。

cd /usr/local/Cellar/imagemagick/6.8.0-10/lib/
ln -s libMagick++-Q16.7.dylib   libMagick++.dylib
ln -s libMagickCore-Q16.7.dylib libMagickCore.dylib
ln -s libMagickWand-Q16.7.dylib libMagickWand.dylib

バージョンが異なればパスも変わるので適宜。シンボリックリンクを貼ってあげます。

これでビルドが通るようになりました。

ちなみに CentOS でも似たようなことになりました。

CentOS でソースからコンパイルしたときには .so ファイルを同じように -Q16 をなくした名前でリンクをはりました。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする