RMagick抱怨说它configuration了不同版本的ImageMagick

运行我的Rails项目的本地script/server时出现以下错误:

RMagick的这个安assembly置了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,但没有奏效。

同样的事情发生在我身上,但解决scheme比卸载imageMagick简单一些。 这听起来像Rmagick的configuration文件不更新使用您更新的imagemagick所以尝试

 sudo gem uninstall rmagick sudo gem install rmagick 

重启你的服务器。

这对我工作希望它有帮助

我仔细看了一下,注意到Rmagickconfiguration了一个较新的imageMagick,但是使用了一个较老的imageMagick。 所以我会假设我的解决scheme仍然可以工作,但你不会使用较新的ImageMagick。

如果使用捆绑器:

bundle exec gem uninstall rmagick

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

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

 identify -version 

这会给你在你的系统上安装的IM版本。

根据您安装IM的方式,find将其从系统中彻底删除的方法。 例如,如果您使用apt-get,请尝试:

 sudo apt-get remove ImageMagick 

如果你从源安装即时消息,去你有他们存储的地方(我的意思是源path/文件夹),然后键入:

 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 
 RMAGICK_BYPASS_VERSION_TEST = true 

这是一个全球性的国旗设置之前需要rmagick。

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

工作和testing好了我。

我通过卸载然后删除错误消息(重新安装前)中列出的文件来完成工作。 看来,卸载并不总是清理一些旧的“.so”文件。

我有同样的问题,并最终得出结论,我安装libmagick9-dev(sudo apt-get安装libmagick9-dev ruby​​1.8-dev)安装ImageMagick API的较低版本。 我的解决scheme是卸载后来的版本,并与Ubuntu打包版本的ImageMagick和其他库。

我知道这是一个古老的线索,但现在MiniMagick似乎是更好,最新的select。 改变是相当容易的。

我在Rails应用程序中遇到了这个问题。 我尝试了Scott Montgomerie的答案 ,但是我不能得到bundle exec gem工作( 不知道为什么,没时间找出 答案 )。

什么对我来说是一个简单的bundle update rmagick

bundle update rmagick为我工作