当我试图安装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重新安装了它们。超级简单,有一个巨大的包目录,更新/卸载也很容易!


当前回答

经过深入挖掘,我在debian 8.3上使用以下信息修复了这个问题: https://www.bountysource.com/issues/18142073-can-t-install-gem-on-ubuntu-15-04 具体地说:

sudo apt-get purge graphicsmagick graphicsmagick-dbg imagemagick-common imagemagick imagemagick-6.q16 libmagickcore-6-headers libmagickwand-dev
sudo apt-get autoremove
sudo apt-get install imagemagick libmagickwand-dev
gem install rmagick

其他回答

在某些操作系统中,您需要使用新的库:libmagick++4 libmagick++-dev

你可以使用:

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

在Ubuntu中安装rmagick gem

sudo aptitude安装Imagemagick和GraphicsMagick(如果没有aptitude,请在s/w中心安装) 安装libmagickcore-dev libmagickwand-dev Gem安装rmagick -v 2.13.1

重要的是:

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

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

sudo apt-get update

我有这个问题时,我已经安装ImageMagick与macports。我跑

    port contents ImageMagick | grep config

来查找配置文件的存储位置,然后运行

    PATH=(insert your path here):${PATH} bundle

使用绑定器安装gem。从现在开始,如果您运行一个需要引用ImageMagick的命令,您可以用该命令作为它的前缀。例如,我有一个引用它的迁移,所以我运行

    PATH=/opt/local/bin/:${PATH} rake db:migrate

“Opt /local/bin/”是配置文件的存放路径。

对于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