web-dev-qa-db-ja.com

Rails and OS X:rmagickのインストール方法?

私はすでに完全に必死です-rmagick gemをMac OS X Lionにインストールしようと丸一日過ごしましたが、文字通りそれは悲劇です。 Googleで似たようなスレッドをたくさん見ましたが、何も助けになりませんでした。

imagemagickを介してbrewを完全にアンインストールし、再度インストールして(これは正常に機能しています)、rmagickをインストールしようとしましたが、このgemをインストールするたびに、私はこのエラーを受け取ります:

Building native extensions.  This could take a while...
ERROR:  Error installing rmagick:
    ERROR: Failed to build gem native extension.

        /Users/adam/.rvm/rubies/Ruby-1.9.3-p327/bin/Ruby extconf.rb
checking for Ruby version >= 1.8.5... yes
extconf.rb:128: Use RbConfig instead of obsolete and deprecated Config.
checking for clang... yes
checking for Magick-config... yes
checking for ImageMagick version >= 6.4.9... yes
checking for HDRI disabled version of ImageMagick... yes
checking for stdint.h... yes
checking for sys/types.h... yes
checking for wand/MagickWand.h... yes
checking for InitializeMagick() in -lMagickCore... no
checking for InitializeMagick() in -lMagick... no
checking for InitializeMagick() in -lMagick++... no
Can't install RMagick 2.13.1. Can't find the ImageMagick library or one of the dependent libraries. Check the mkmf.log file for more detailed information.

*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
    --with-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --without-make-prog
    --srcdir=.
    --curdir
    --Ruby=/Users/adam/.rvm/rubies/Ruby-1.9.3-p327/bin/Ruby
    --with-MagickCorelib
    --without-MagickCorelib
    --with-Magicklib
    --without-Magicklib
    --with-Magick++lib
    --without-Magick++lib


Gem files will remain installed in /Users/adam/.rvm/gems/Ruby-1.9.3-p327/gems/rmagick-2.13.1 for inspection.
Results logged to /Users/adam/.rvm/gems/Ruby-1.9.3-p327/gems/rmagick-2.13.1/ext/RMagick/gem_make.out

GemをGemfileからインストールするか、Terminalからインストールするかは関係ありません。どちらの場合も、同じエラー出力が表示されます。

これはimagemagickのバージョンです:imagemagick-6.8.0-1

問題が発生する可能性のあるヒントを教えてください。どうもありがとうございます!

34
user984621

rmagickには、homebrewのimagemagick(> = 6.8.0-10)で問題があります。

あなたはどちらか

rmagick gemを更新

    bundle update rmagick

または、いくつかのdylibを手動でシンボルリンクして動作させる:

    $ cd "`Magick-config --prefix`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

その後 gem install rmagick動作するはずです。

これに関する議論を homebrew/issues/16625 で確認してください

更新:Nice one-linerコマンドの@farazに感謝します。

cd "`Magick-config --prefix`/lib"; ln -s libMagick++-Q8.7.dylib libMagick++.dylib; ln -s libMagickCore-Q8.7.dylib libMagickCore.dylib; ln -s libMagickWand-Q8.7.dylib libMagickWand.dylib
73
taiansu

Mac OSX Sierra&Rails 5

brew unlink imagemagick
brew install imagemagick@6
brew link imagemagick@6 --force
28
Ashik Salman

同じ問題がありました。

Mkmf.logを確認すると、次のエラーメッセージが表示されます。

ld: library not found for -lgomp
clang: error: linker command failed with exit code 1 (use -v to see invocation)
checked program was:
/* begin */
1: #include "Ruby.h"
2: 
3: int main() {return 0;}
/* end */\

ここに私がそれを解決した方法があります:

  1. ImageMagickの現在のバージョンをアンインストールします。

    brew uninstall imagemagick

  2. Openmpサポートなしでimagemagickを再インストールします(これはlgompを担当するライブラリです)。

    brew install imagemagick --disable-openmp

  3. Rmagickをインストールします。

    gem install rmagick

それでおしまい!

18
tiagotam

Homebrewを使用している場合は、PKG_CONFIG_PATHを設定するだけです

brew install imagemagick
PKG_CONFIG_PATH=/usr/local/Cellar/imagemagick//6.8.9-1/lib/pkgconfig/ gem install rmagick
7
Dan Draper

バージョン6.8.xはrmagick gemを破壊するため、imagemagickのバージョン6.7.7-6をインストールしてみてください。

cd /usr/local
git checkout 7d951fb /usr/local/Library/Formula/imagemagick.rb
brew install imagemagick
5
cdb

2017年現在、HomebrewはImageMagick 7.0に切り替えたため、上記で提案されたすべてのソリューションはもはや機能していないようです

ここにいくつかの回避策があります。 https://github.com/rmagick/rmagick/issues/256

ImageMagick 6.9.7-3およびgem install rmagickうまくいきました。

4
Quv

Rmagickのインストールに問題があるときに、このワンライナーを使用しています。これは毎回発生します...

Sudo C_INCLUDE_PATH=/usr/local/Cellar/imagemagick/6.8.7-7/include/ImageMagick-6/ PKG_CONFIG_PATH=/usr/local/Cellar/imagemagick/6.8.7-7/lib/pkgconfig/ gem install rmagick

imagemagickのバージョンが正しいことを確認してください、これで準備完了です。 imagemagickがインストールされていない場合は、brew install imagemagick


このgemのインストールに問題があり、その方法を忘れるたびに、これを投稿する必要がありました。

3
Automatico

Imagemagickをインストールしたら、試してみてください

> gem pristine rmagick

このスレッドから取得しました。 Rails Rmagick gem 。それが役に立てば幸い。

1
RubyFanatic

または、ImageMagickの古いバージョンに戻すこともできます。 このスレッド 実行方法の説明があります:

さて、試して実際に役立つようにするには、古いボトルの1つをCellarに抽出し、古いバージョンをアンインストールした場合はbrew link imagemagickを実行することをお勧めします。

ここから入手できます: http://sourceforge.net/projects/machomebrew/files/Bottles/imagemagick-6.7.7-6.snowleopard.bottle.3.tar.gz/downloadhttp://sourceforge.net/projects/machomebrew/files/Bottles/imagemagick-6.7.7-6.lion.bottle.3.tar.gz/downloadhttp://sourceforge.net /projects/machomebrew/files/Bottles/imagemagick-6.7.7-6.mountainlion.bottle.3.tar.gz/download

0
ced