Проблема с установкой ImageMagick и rmagick на Mountain Lion
У меня проблемы с установкой Rmagick в Mountain Lion. Я установил 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>'
11 ответов
Сегодня утром я только что обновился до "Горного льва", и у меня были проблемы с Рмаджиком Я когда-то устанавливал ImageMagick через homebrew, так что это сработало для меня после установки новых инструментов командной строки через окно настроек 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
Я получал то же самое
sudo ln -s /usr/bin/gcc /usr/bin/gcc-4.2
сделал это как говорится в https://gist.github.com/1860511
Поэтому после обновления моего Mac Pro до Mountain Lion, моя среда ruby начала кричать с разными ошибками одна за другой. После 1-2 часов проб - ошибки и поиск в Google, вот как я исправил свой ruby на рельсах.
Сначала я получил ошибки ruby env. Он не обнаруживал команды git, и Bundler кричал об ошибках, когда я запускал foreman start
Шаг 1: Update XCode
, Получить последнюю версию 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
Это должно исправить все проблемы, которые горный лев подарил вам после обновления.
Просто беги bundle
,
У меня не было решений, в итоге я побежал brew doctor
и обнаружил, что мне нужно связать ImageMagick с brew link --overwrite imagemagick
Попробуйте изменить путь так, чтобы /usr/local/bin вставлялся перед /usr/bin. Я нашел этого доктора, и он позволил мне закончить сборку изображений.
Вот краткое изложение того, как мне удалось заставить RMagick работать после нескольких попыток. Я считаю, что следующее - лучший способ получить его, не затрачивая усилий на скачивание исходных архивов и сборок - оставьте это экспертам
- Вам необходимо установить XCode и инструменты командной строки для gcc/g++ и т. Д. Инструменты командной строки не устанавливаются автоматически с XCode, зайдите в Preferences и установите его
- Следующая установка Macport
- Установите также Homebrew
- Убедитесь, что у вас установлен сервер X11 - если не установлен -
sudo port install -v xorg-server
, я использую-v
вариант, так как это длинная установка, и вы можете задаться вопросом, делает ли он что-то или просто висит - Установите pkgconfig -
sudo brew install pkgconfig
- теперь пришло время установить ImageMacick -
sudo port install -v ImageMagick
не используйте brew для установки ImageMagick - он не устанавливает все зависимости и делегатов должным образом. - после установки 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 проверьте, где он установлен, перейдите в каталог с примерами и запустите некоторые из программ.
У меня была похожая проблема, но на El Captain. Лучше объясни здесь. Исправлено после установки инструментов командной строки xcode:
xcode-select --install
Я только что установил rmagick 2.13.2 и эта проблема исчезла.
Я обнаружил, что решение для меня было сочетание шагов, перечисленных выше, на http://tektastic.com/2012/07/getting-rmagic-and-friends-to-work-on.html и здесь http://robots.thoughtbot.com/post/27985816073/the-hitchhikers-guide-to-riding-a-mountain-lion, хотя мне не нужно было делать все шаги, перечисленные в обоих постах. Но мне нужно было установить инструменты командной строки из XCode, я пропустил эту деталь первые несколько раз. Мне также пришлось установить gcc-4.2 с помощью homebrew и сделать ссылку на эту установку в моем каталоге bin.
Я мог бы быть смущен тем, что происходит с различными компиляторами, но я бы с осторожностью отнесся к sym, связывающему / usr / bin / gcc с /usr/bin/gcc-4.2 (который, в свою очередь, может быть ссылкой на gcc-4.2, установленный самодельный). Прежде чем я понял, что мне нужно установить инструменты командной строки, я попытался создать эту символьную ссылку, а затем начал видеть другие ошибки сборки гемов. Установка инструментов командной строки устранила эти проблемы - я считаю, что инструменты командной строки xcode сделали его символической ссылкой на llvm-gcc-4.2.
Вам необходимо установить XCode 4.4, инструменты командной строки и т. Д. Ознакомьтесь с полным списком здесь: http://tektastic.com/2012/07/getting-rmagic-and-friends-to-work-on.html