Обновление RMagick и Imagemagick является болезненным опытом. Я обновил версию Imagemagick на моем Mac (MacOS El Capitan Version 10.11.5) с помощью homebrew для одного проекта в Ruby 2.3 до6.9.5-9
$ convert --version
Version: ImageMagick 6.9.5-9 Q16 x86_64 2016-09-09
Теперь более старый проект в Ruby 1.8.7 отказывается работать с сообщением об ошибке «эта установка RMagick была настроена с ImageMagick 6.8.9, но ImageMagick 6.9.5-9 используется». Таким образом я удалил "rmagick", но его нельзя установить снова
$ gem install rmagick -v 2.16.0
Building native extensions. This could take a while...
ERROR: Error installing rmagick:
ERROR: Failed to build gem native extension.
checking for /usr/local/opt/gcc46/bin/gcc-4.6... yes
checking for Magick-config... yes
checking for outdated ImageMagick version (<= 6.4.9)... no
checking for presence of MagickWand API (ImageMagick version >= 6.9.0)... no
checking for Ruby version >= 1.8.5... yes
checking for stdint.h... no
checking for sys/types.h... no
checking for wand/MagickWand.h... no
Can't install RMagick 2.16.0. Can't find MagickWand.h.
И если он не может быть установлен, все приложение не может быть запущено. Я попробовал все ответы отсюда , и ни один из них не работает на MacOS :-( Я переустановил imagemagick и pkg-config с homebrew, и безуспешно пробовал разные версии RMagick. 2.16.0 является последней версией RMagick в настоящее время.
MagicWand, похоже, используется в версии ImageMagick> 6.9, и его можно найти на компьютере:
find /usr/local -name MagickWand.h
=> /usr/local/Cellar/imagemagick/6.9.5-9_1/include/ImageMagick-6/wand/MagickWand.h
find /usr/local -name MagickWand.pc
=> /usr/local/Cellar/imagemagick/6.9.5-9_1/lib/pkgconfig/MagickCore.pc
Это не работает, даже если я укажу эти пути во время установки gem (та же ошибка, что и выше) :-(
C_INCLUDE_PATH=/usr/local/Cellar/imagemagick/6.9.5-9_1/include/ImageMagick-6 PKG_CONFIG_PATH=/usr/local/lib/pkgconfig gem install rmagick
ОБНОВИТЬ:
Ошибка возникает только для Ruby 1.8.7, есть возможность установить RMagick для Ruby 2.0 и Ruby 2.3. Ruby 1.8.7 и ImageMagick 6.9.5 не совместимы.
- Рубин 1,8,7 х
- Ruby 2.0.0 ✓
- Ruby 2.3.1 ✓