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


当前回答

在Mac OS X sudo端口安装ImageMagick原来工作良好,以解决gem安装rmagick问题。我只是不知道它工作得很好,因为rvm在安装过程中吹走了我的.bash_profile内容,其中包括MacPort添加的/opt/local/bin到PATH。我把/opt/local/bin放到我的.bash_profile的PATH中,然后我的gem安装rmagick就成功了。

其他回答

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

你可以使用:

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

记得检查存档Gemfile。安装完成后请锁定。 删除这个存档并再次执行bundle。 它适用于我在linux:D

无法安装RMagick 2.13.2。在ubuntu 17.10中

我的决定

 - sudo apt-get purge imagemagick libmagickcore-dev libmagickwand-dev
 - sudo apt-get autoremove
 - sudo rm /usr/bin/Magick-config

 - sudo apt-get install imagemagick libmagickwand-dev

版本是正确指定配置路径所必需的

cd /usr/lib/x86_64-linux-gnu 查看版本ImageMagick,我的版本ImageMagick - 6.9.7。 cd ImageMagick-6.9.7 / ls 查看bin-q16或bin-q16目录的名称

创建到配置的链接

Sudo ln -s /usr/lib/x86_64-linux-gnu / ImageMagick-version / bin目录/ Magick-config /usr/bin/Magick-config

创建我的版本ImageMagick

 - sudo ln -s /usr/lib/x86_64-linux-gnu/ImageMagick-6.9.7/bin-q16/Magick-config /usr/bin/Magick-config
 - bundle

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

Ubuntu:

sudo apt-get install imagemagick libmagickwand-dev libmagickcore-dev
gem install rmagick

被久远。

yum remove ImageMagick
gem uninstall rmagick
yum install ImageMagick ImageMagick-devel ImageMagick-last-libs ImageMagick-c++ ImageMagick-c++-devel
gem install rmagick

一样:

下载安装http://xquartz.macosforge.org/trac/wiki/X112.7.2

后:

brew uninstall imagemagick
brew link xz jpeg freetype    
brew install imagemagick
brew link --overwrite imagemagick
gem install rmagick