RMagick抱怨它配置了不同版本的ImageMagick

cha*_*nya 36 rmagick imagemagick

运行本地script/serverRails项目时出现以下错误:

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但是没有用.

小智 74

同样的事情发生在我身上,但解决方案比卸载imageMagick简单一点.听起来Rmagick的配置文件没有更新为使用您更新的imagemagick所以尝试

sudo gem uninstall rmagick
sudo gem install rmagick
Run Code Online (Sandbox Code Playgroud)

重启你的服务器.

这对我有用,希望它有所帮助

我仔细观察了一下,注意到Rmagick配置了较新的imageMagick但是使用了较旧的imageMagick.所以我认为我的解决方案仍然有效,但你不会使用更新的ImageMagick.

  • 如果使用bundler:`bundle exec gem uninstall rmagick``bundle` (14认同)

Sco*_*rie 26

如果使用bundler:

bundle exec gem uninstall rmagick

bundle install (将重新安装rmagick作为捆绑包的一部分)


mic*_*ino 9

我会删除之前的任何安装,然后按照此页面重新开始.首先打开一个shell并启动:

identify -version
Run Code Online (Sandbox Code Playgroud)

这将为您提供系统上安装的IM版本.

根据您安装IM的方式,找到从系统中完全删除它的方法.例如,如果您使用apt-get,请尝试:

sudo apt-get remove ImageMagick
Run Code Online (Sandbox Code Playgroud)

如果您从源安装IM,请转到存储它们的位置(我的意思是源路径/文件夹)并键入:

make uninstall
Run Code Online (Sandbox Code Playgroud)

然后,您可以重新安装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
Run Code Online (Sandbox Code Playgroud)

然后你必须将$ HOME/bin添加到$ PATH的开头

cd
echo "export PATH=$HOME/bin:\$PATH" >> .bash_profile
source .bash_profile
Run Code Online (Sandbox Code Playgroud)

现在是宝石安装RMagick的时候了:

export LD_LIBRARY_PATH=$HOME/lib
gem install rmagick
Run Code Online (Sandbox Code Playgroud)


Rei*_*com 6

RMAGICK_BYPASS_VERSION_TEST = true
Run Code Online (Sandbox Code Playgroud)

这是在要求rmagick之前设置的全局标志.

来自 https://bugs.launchpad.net/ubuntu/+source/librmagick-ruby/+bug/565461/comments/2

工作和测试对我来说还可以.