当我试图安装rmagick gem时,我得到如下所示的错误。我在雪豹10.6使用RVM, Ruby 1.9.2-head和Rails 3.05。对类似问题的回答建议安装ImageMagick,我成功地安装了。其他人建议安装“libmagick9-dev库”,但是,我不知道如何做到这一点。

我是一个新的开发人员,任何现有的解释或资源的帮助或指导都是非常感激的。谢谢!

jjdevenuta(opal)$ gem install rmagick
Fetching: rmagick-2.13.1.gem (100%)
Building native extensions.  This could take a while...
ERROR:  Error installing rmagick:
ERROR: Failed to build gem native extension.

/Users/jjdevenuta/.rvm/rubies/ruby-1.9.2-head/bin/ruby extconf.rb
checking for Ruby version >= 1.8.5... yes
checking for gcc... yes
checking for Magick-config... no
Can't install RMagick 2.13.1. Can't find Magick-config in /Users/jjdevenuta/.rvm/gems/ruby-1.9.2-head@rails3/bin:/Users/jjdevenuta/.rvm/gems/ruby-1.9.2-head@global/bin:/Users/jjdevenuta/.rvm/rubies/ruby-1.9.2-head/bin:/Users/jjdevenuta/.rvm/bin:/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/git/bin:/usr/X11/bin

*** 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.

Provided configuration options:
    --with-opt-dir
    --without-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --without-make-prog
    --srcdir=.
    --curdir
    --ruby=/Users/jjdevenuta/.rvm/rubies/ruby-1.9.2-head/bin/ruby

更新 如果你是Mac/OS X用户,我强烈建议使用Homebrew作为你的包安装器/管理器。你可以在这里找到它。自从一开始问这个问题,我已经删除了之前安装的rmagick和imagemagick等软件,并使用Homebrew重新安装了它们。超级简单,有一个巨大的包目录,更新/卸载也很容易!


当前回答

我在Ubuntu上修复这个问题的方法是

$ sudo apt-get install libmagickwand-dev
$ sudo apt-get install ImageMagick

其他回答

对于那些不想使用John Maddox编写的优秀安装脚本的源代码构建方法的人来说,下面的脚本在我安装CentOS 6.2时是有效的。(根据需要调整包管理器)。

yum install -y {libwmf,lcms,ghostscript,ImageMagick}{,-devel}
gem install rmagick

再说一次,如果你使用发行版的包管理器,并且真的希望保持它的理智,这主要是有兴趣的。

对于CentOS 5/6,这是对我有效的方法

yum remove ImageMagick
yum install tcl-devel libpng-devel libjpeg-devel ghostscript-devel bzip2-devel freetype-devel libtiff-devel
mkdir /root/imagemagick
cd /root/imagemagick
wget ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz
tar xzvf ImageMagick.tar.gz
cd ImageMagick-*
./configure --prefix=/usr/ --with-bzlib=yes --with-fontconfig=yes --with-freetype=yes --with-gslib=yes --with-gvc=yes --with-jpeg=yes --with-jp2=yes --with-png=yes --with-tiff=yes
make
make install

对于64位,这样做

cd /usr/lib64
ln -s ../lib/libMagickCore.so.3 libMagickCore.so.3 
ln -s ../lib/libMagickWand.so.3 libMagickWand.so.3

添加缺少的依赖项

yum install ImageMagick-devel

最后是rmagick

gem install rmagick

如果需要重新开始,请先删除其他安装

cd /root/imagemagick/ImageMagick-*
make uninstall

重要的是:

sudo apt-get install libmagick++4 libmagick++-dev

在Linux mint 13上进行更新后工作:

sudo apt-get update

事情的变化……也许这能帮助到其他人:

Sudo apt-get安装libmagick9-dev用来工作。但对于后来版本的imagemagick,我需要:

sudo apt-get install graphicsmagick-libmagick-dev-compat libmagickcore-dev libmagickwand-dev

在终端中执行

  sudo apt-get install libmagickcore-dev libmagickwand-dev

如果它不工作比

sudo ln -s /usr/lib/x86_64-linux-gnu/ImageMagick-6.8.9/bin-Q16/Magick-config /usr/local/bin/Magick-config

供参考