Не удается установить RMagick 2.13.1.Не могу найти MagickWand.h. - PullRequest
152 голосов
/ 29 января 2012

Когда я пытаюсь установить rmagick, я получаю следующее сообщение об ошибке:

Can't install RMagick 2.13.1. Can't find MagickWand.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.

Я на Mac OSX 10.6.8, ruby ​​1.9.2p290, rvm 1.10.2.

Может кто-нибудь помочь мне решить эту проблему.

Ответы [ 30 ]

270 голосов
/ 20 сентября 2012

Если вы работаете в Ubuntu, то установка этого пакета для меня исправлена:

sudo apt-get install libmagickwand-dev
135 голосов
/ 22 января 2017

Похоже, ImageMagick 7 изменил путь к файлу.

При сборке rmagick, поскольку он включает файл как wand/MagickWand.h Обходных путей нет. Похоже, что придерживаться ImageMagick 6 на данный момент.

В Mac OS X (я тестировал на Sierra) я использовал versions кран HomeBrew, например:

brew tap homebrew/versions
brew install imagemagick@6

Затем используйте путь, указанный выше при установке:

PKG_CONFIG_PATH=/usr/local/opt/imagemagick@6/lib/pkgconfig gem install rmagick

Для установки с ImageMagick 6.

78 голосов
/ 01 апреля 2013

Я не хотел связываться с переменными окружения, поскольку хотел, чтобы bundler мог компилировать этот гем самостоятельно на машине CI. Вместо этого я использовал Homebrew для установки pkg-config:

brew install pkgconfig

и в следующий раз, когда я попытался скомпилировать гем RMagick, он нашел файл заголовка без проблем.

(Это pkg-config 0.28, ImageMagick 6.8.0-10 и RMagick 2.13.2, все на Mountain Lion.)

67 голосов
/ 31 января 2012

У меня была похожая проблема с запуском

$ gem install rmagick

Прежде всего, у вас установлен imagemagick? Если вы не уверены, запустите

$ convert --version

Если вы это сделаете, вы, вероятно, установили его с помощью fink или macports (может, homebrew?). Происходит следующее: rvm не может найти каталог imagemagick.

После прочтения https://superuser.com/questions/361435/i-have-compiled-imagemagick-on-my-centos-and-rmagick-wont-install Я экспортировал путь imagemagick, добавив

$ export PKG_CONFIG_PATH="/opt/local/lib/pkgconfig:$PKG_CONFIG_PATH"

в мой ~ / .bash_profile, используя новый профиль, затем снова запустив gem install rmagick.

Это сработало для меня после того, как я это сделал.

45 голосов
/ 03 июня 2012

исправьте эту настройку, включая путь вашей текущей установки imagemagick:

Установить ImageMagick с заваркой

brew install imagemagick

найти библиотеку

$ mdfind MagickWand.h
/usr/local/Cellar/imagemagick/6.7.5-7/include/ImageMagick/wand/MagickWand.h

Установить rmagick gem

$ C_INCLUDE_PATH=/path/MagickWand.h gem install rmagick

пример:

$ C_INCLUDE_PATH=/usr/local/Cellar/imagemagick/6.7.5-7/include/ImageMagick/ gem install rmagick
38 голосов
/ 20 сентября 2013

Я пометил это как фаворит, потому что он, кажется, возвращается, чтобы кусать меня с каждой новой системой, на которой мне нужно установить RMagick (и прошло время, и номера версий свернули).

Mac OS X 10.8.4

rvm 1.22.3

ruby-2.0.0-p247

Установленные инструменты разработчика Xcode 4.6.3

$ brew install imagemagick
==> /usr/local/Cellar/imagemagick/6.8.6-3

$ brew install pkgconfig
==> /usr/local/Cellar/pkg-config/0.28

$ C_INCLUDE_PATH=/usr/local/Cellar/imagemagick/6.8.6-3/include/ImageMagick-6 PKG_CONFIG_PATH=/usr/local/Cellar/imagemagick/6.8.6-3/lib/pkgconfig/ gem install rmagick
Successfully installed rmagick-2.13.2

Большое спасибовсе, кто добавил полезные ответы выше!

28 голосов
/ 25 января 2017

Пользователи Mac, использующие brew

Если вы можете использовать v6 ImageMagick вместо 7, вы можете попробовать это

brew install imagemagick@6 --force && brew link imagemagick@6 --force

Обратите внимание, что это приведет к удалению существующей установки IM, поэтому будьте осторожны, если у вас есть другие проекты на вашем компьютере, использующие ImageMagick без проблем.

12 голосов
/ 17 марта 2013

Для моего собственного и чужого назидания я обошел ошибку о magicwand.h, воспользовавшись предложением xonico. MDFind плюс C_INCLUDE_PATH. Однако, это тогда дало мне ошибку о MagickCore.pc. Моя последняя команда, чтобы заставить это работать, должна была включать и то и другое так:

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

Очевидно, что ваши пути будут различаться в зависимости от того, используете ли вы brew, как я, и какую версию imagemagick вы устанавливали. Кроме того, инструменты командной строки xcode должны были быть установлены, как уже упоминали другие.

Спасибо всем за сообщения! Я пишу ваши ответы, потому что это помогло мне!

11 голосов
/ 09 сентября 2013

Для Ubuntu:

sudo apt-get install imagemagick libmagickwand-dev
gem install rmagick
8 голосов
/ 03 июня 2014

У меня возникла проблема после обновления до Maverics.Было потеряно много ссылок.В моем случае мне пришлось обновить ссылки на pkg-config

brew unlink pkg-config
brew link pkg-config

Затем установка rmagick работала как чудо.

...