Mountain Lion への ImageMagick と rmagick のインストールに関する問題
-
12-12-2019 - |
質問
Mountain Lion に rmagick をインストールする際に問題が発生しています。Xcode 4.4と開発者ツールをインストールしました。まだこの問題に直面しています。
Installing rmagick (2.13.1) with native extensions Unfortunately, a fatal error has occurred. Please report this error to the Bundler issue tracker at https://github.com/carlhuda/bundler/issues so that we can fix it. Thanks!
/Users/mohit/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:552:in `rescue in block in build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError)
/Users/mohit/.rvm/rubies/ruby-1.9.3-p125/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... *** 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/mohit/.rvm/rubies/ruby-1.9.3-p125/bin/ruby
/Users/mohit/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:381:in `try_do': The compiler failed to generate an executable file. (RuntimeError)
You have to install development tools first.
from /Users/mohit/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:506:in `try_cpp'
from /Users/mohit/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:931:in `block in have_header'
from /Users/mohit/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:790:in `block in checking_for'
from /Users/mohit/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:284:in `block (2 levels) in postpone'
from /Users/mohit/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:254:in `open'
from /Users/mohit/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:284:in `block in postpone'
from /Users/mohit/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:254:in `open'
from /Users/mohit/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:280:in `postpone'
from /Users/mohit/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:789:in `checking_for'
from /Users/mohit/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:930:in `have_header'
from extconf.rb:193:in `<main>'
Gem files will remain installed in /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/rmagick-2.13.1 for inspection.
Results logged to /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/rmagick-2.13.1/ext/RMagick/gem_make.out
from /Users/mohit/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:530:in `block in build_extensions'
from /Users/mohit/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:505:in `each'
from /Users/mohit/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:505:in `build_extensions'
from /Users/mohit/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:180:in `install'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/bundler-1.1.0/lib/bundler/source.rb:90:in `block in install'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/bundler-1.1.0/lib/bundler/rubygems_integration.rb:82:in `preserve_paths'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/bundler-1.1.0/lib/bundler/source.rb:89:in `install'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/bundler-1.1.0/lib/bundler/installer.rb:73:in `block in install_gem_from_spec'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/bundler-1.1.0/lib/bundler/rubygems_integration.rb:97:in `with_build_args'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/bundler-1.1.0/lib/bundler/installer.rb:72:in `install_gem_from_spec'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/bundler-1.1.0/lib/bundler/installer.rb:56:in `block in run'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/bundler-1.1.0/lib/bundler/installer.rb:55:in `run'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/bundler-1.1.0/lib/bundler/installer.rb:12:in `install'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/bundler-1.1.0/lib/bundler/cli.rb:220:in `install'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/bundler-1.1.0/lib/bundler/vendor/thor/task.rb:22:in `run'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/bundler-1.1.0/lib/bundler/vendor/thor/invocation.rb:118:in `invoke_task'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/bundler-1.1.0/lib/bundler/vendor/thor.rb:263:in `dispatch'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/bundler-1.1.0/lib/bundler/vendor/thor/base.rb:386:in `start'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/gems/bundler-1.1.0/bin/bundle:13:in `<top (required)>'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/bin/bundle:19:in `load'
from /Users/mohit/.rvm/gems/ruby-1.9.3-p125/bin/bundle:19:in `<main>'
解決
今朝のマウンテンライオンに更新され、RMAGICKがトラブルしました。私は過去のある時点でHomeBrewを通してimageMagickをインストールしましたので、これはXcodeの設定ウィンドウを通して新しいコマンドラインツールをインストールした後に私のために働きました。
brew update
brew uninstall ImageMagick
brew install ImageMagick
gem uninstall rmagick
gem install rmagick
.
上記の投稿のようにGCCでファンキーになる必要はありませんでした。
他のヒント
最終的にこれを使ってこれを解決しました:
$ 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
.
ソリューションは https://coderwall.com/p/wnomjg
そのため、Mac Pro を Mountain Lion にアップデートした後、Ruby 環境がさまざまなエラーで次々と悲鳴を上げ始めました。1 ~ 2 時間の試行錯誤とグーグル検索を経て、Ruby on Rails 環境を修正した方法を以下に示します。
最初にRuby env Errorsを取得しました。GITコマンドを検出していませんでした。 foreman start
ステップ1 : Update XCode
. 。最新の1つのXcode 4.6 Mountain Lionには、手の前にルビーヘッダーが取り付けられていないため、Xcodeから手動でこれを行う必要があります。Xcodeの設定/ダウンロードに移動します。
Install Command Line Tools
ステップ2: Install XQuartz
ログアウトして再度ログインします。(imagemagick の式が更新されているため、これは必要ないかもしれません
ステップ 3: 今、あなたのRuby envはImagemagickエラーについて話し始めます。
brew update
brew uninstall imagemagick
brew install --fresh imagemagick
gem uninstall rmagick 2.13.2
gem install rmagick
最後のものを試した後、次のようなネイティブ拡張エラーが表示されます
Installing rmagick (2.13.1) with native extensions
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/Users/priyanka/.rvm/rubies/ruby-1.9.2-p180/bin/ruby extconf.rb
checking for Ruby version >= 1.8.5... yes
checking for /usr/bin/gcc-4.2... no
No C compiler found in ${ENV['PATH']}. See mkmf.log for details.
*** 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
--without-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/priyanka/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
Gem files will remain installed in /Users/priyanka/.rvm/gems/ruby-1.9.2-p180/gems/rmagick- 2.13.1 for inspection.
Results logged to /Users/priyanka/.rvm/gems/ruby-1.9.2-p180/gems/rmagick-2.13.1/ext/RMagick/gem_make.out
An error occured while installing rmagick (2.13.1), and Bundler cannot continue.
Make sure that `gem install rmagick -v '2.13.1'` succeeds before bundling.
ステップ 4:
sudo ln -s /usr/bin/gcc /usr/bin/gcc-4.2
これにより、アップグレード後に Mountain Lion から発生したすべての問題が解決されるはずです。
ただ走れ bundle
.
/ usr / local / binが/ usr / binの前に挿入されるようなパスを変更してみてください。私はこれを実行している醸造医者を見つけました、そしてそれは私がimagemagickのコンパイルを終えることを許しました。
これは、私がいくつかの試みの後にRMagickの仕事を得ることができた方法の概要です。ソースのtarballとcompilationをダウンロードするというペインに行かずにそれを得るための最良の方法は、それを受けるための最良の方法です - それを専門家に
- GCC / G ++など用にXcodeとCommand Line Toolsをインストールする必要があります。
- 次にインストール macport
- インストール HomeBrew
- X11サーバがインストールされていることを確認してください - インストールされていない場合 -
sudo port install -v xorg-server
。長いインストールのように-v
オプションを使用します そして、それが何かをしているのか、ただぶら下がっているのか疑問に思うかもしれません - PKGCONFIG -
sudo brew install pkgconfig
- 今すぐImageMacikic -
sudo port install -v ImageMagick
をインストールする時が来ました。 ImageMagickをインストールするためにBREWを使用しません - すべての依存関係を正しくインストールしない。 - ImageMagickがインストールされたら -
DISPLAY
env変数 -export DISPLAY=:0.0
-.profile
に置かれています。 - 今すぐImageMagickのインストールをテストします
- X11サーバーを起動します(X11サーバーのインストール後、そこにあります。 あなたのアプリリスト)
- コマンドライン実行 -
$convert logo: logo.gif; identify logo.gif; display logo.gif
-logo.gif
の表示ウィンドウをポップアップする必要があります。 -
コマンドライン -
$convert -list configure | grep -i delegates
からコマンドを実行します。次のことを出力する必要があります。
DELEGATES bzlib fftw fontconfig freetype gs jpeg jng lcms2 lzma png tiff x11 xml zlib
-
今すぐ実行する必要があります
sudo gem install RMagick
RMAGICKが正常にインストールされた後 - インストールされている場所を確認し、Examplesディレクトリに移動していくつかのプログラムを実行します。
ソリューションは私に働いていなかった、最終的にはbrew doctor
が走り、ImageMagickをbrew link --overwrite imagemagick
にリンクする必要があることを発見しました
私は似た問題が挙げられましたが、ELキャプテンに。より良い説明ここ。
Xcodeコマンドラインツールのインストール後に修正されました:
.xcode-select --install
Xcode 4.4、コマンドラインツールなどをインストールする必要があります。ここでの全リストをチェックしてください。 http://tektastic.com/2012/07/ getting-rmagic-and-friends-to-work-on.html
私は私のための解決策が上記のステップの組み合わせであった、 http://tektastic.com/2012/07/getting-rmagic-and-friends-to-work-on.html http://robots.thoughtbot.com/post/27985816073/The- Hitchhikers-乗馬ガイドa-mountain-lion 。どちらかの投稿に記載されているすべての手順をしていませんでしたが。しかし、私はXcodeからコマンドラインツールをインストールする必要がありました、私は最初の数回の詳細を逃しました。私はまたHomebrewを使ってGCC-4.2をインストールし、私のbinディレクトリにそのインストールへのシンボルリンクを作成しなければなりませんでした。
私は異なるコンパイラで何が起こっているのかについて混同することができますが、私は/ usr / bin / gccを/ usr/bin/gcc-4.2から/ usr/bin/gcc-4.2に慎重になるでしょう(これはGCCへのリンクである可能性があります。 7.2 HomeBrewによってインストールされています)。私がコマンドラインツールをインストールする必要があることに気付く前に、そのSYMリンクを作ってから他のGEMビルド失敗を見て始めました。コマンドラインツールのインストールこれはそれらの問題を修正しました - XcodeコマンドラインツールがLLVM-GCC-4.2へのSYMリンクを作成しました。
RMAGICK 2.13.2をインストールしたばかりで、この問題は消えています。