RMagick жалуется, что она была настроена с другой версией ImageMagick
Я получаю следующую ошибку при запуске локального script/server
моего проекта Rails:
Эта установка RMagick была настроена с помощью ImageMagick 6.6.1, но ImageMagick 6.4.5 используется. (RuntimeError)
Запуск identify --version
показывает следующее:
Версия: ImageMagick 6.6.1-10 2010-05-21 Q8 http://www.imagemagick.org
Итак, мой вопрос заключается в том, как и где я должен делать изменения, чтобы работать нормально; Я уже переустановил ImageMagick, но это не сработало.
Ответы
Ответ 1
То же самое произошло со мной, но решение было немного проще, чем удаление imageMagick. Похоже, что файл конфигурации Rmagick не обновляется, чтобы использовать обновленный образ imagemagick, поэтому попробуйте
sudo gem uninstall rmagick
sudo gem install rmagick
перезагрузите сервер.
Это помогло мне надеяться, что это поможет
Я подошел поближе и заметил, что у вас Rmagick настроен для более нового imageMagick, но с использованием более старого imageMagick. Поэтому я бы предположил, что мое решение все равно будет работать, но вы не будете использовать новый ImageMagick.
Ответ 2
При использовании bundler:
bundle exec gem uninstall rmagick
bundle install
(переустановит rmagick как часть пакета)
Ответ 3
Я бы удалил любую предыдущую установку и снова запустил следующую эту страницу.
Прежде всего, откройте оболочку и запустите:
identify -version
который предоставит вам версию IM, установленную в вашей системе.
В зависимости от того, как вы установили IM, найдите способ удалить It полностью из системы. Например, если вы использовали apt-get, попробуйте:
sudo apt-get remove ImageMagick
Если вы установили IM из источников, перейдите туда, где вы их сохранили (я имею в виду путь/папку источников) и введите:
make uninstall
Затем вы можете переустановить ImageMagick, скомпилировав его из источников:
cd
wget ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz
tar zxf ImageMagick.tar.gz
cd ImageMagick-*/
./configure --prefix=$HOME --without-perl
make
make install
Затем вам нужно добавить $HOME/bin в начало вашего $PATH
cd
echo "export PATH=$HOME/bin:\$PATH" >> .bash_profile
source .bash_profile
Теперь пришло время, чтобы установить gem RMagick:
export LD_LIBRARY_PATH=$HOME/lib
gem install rmagick
Ответ 4
RMAGICK_BYPASS_VERSION_TEST = true
Это глобальный флаг, установленный перед требованием rmagick.
от
https://bugs.launchpad.net/ubuntu/+source/librmagick-ruby/+bug/565461/comments/2
Работал и тестировался для меня.
Ответ 5
Я запустил его, удалив и удалив файл, указанный в сообщении об ошибке (перед повторной установкой). Похоже, что удаление не всегда очищает некоторые старые файлы .so.
Ответ 6
У меня была такая же проблема, и в итоге я пришел к выводу, что моя установка libmagick9-dev
(sudo apt-get install libmagick9-dev ruby1.8-dev) устанавливал API-интерфейс ImageMagick для более низкой версии. Мое решение состояло в том, чтобы удалить более поздние версии и перейти с Ubuntu в упакованных версиях ImageMagick и других библиотек.
Ответ 7
Я знаю, что это старый поток, но теперь MiniMagick кажется лучшим и самым современным выбором. Изменение довольно просто.
Ответ 8
Я столкнулся с этим в приложении Rails. Я попробовал ответ Скотта Монтгомери, но я не смог получить bundle exec gem
для работы (не знаю, почему, нет времени, чтобы узнать).
То, что сработало для меня, было простым bundle update rmagick
.
Ответ 9
bundle update rmagick
работал у меня