当我试图安装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上,你还需要像这样安装imagemagick和libmagickcore-dev:

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

一切都写在文件里。

其他回答

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

我最终通过使用github上的ImageMagick安装脚本来让它工作。

magick-installer (https://github.com/maddox/magick-installer)

它重新安装了ImageMagick,然后通过捆绑器完美地安装了RMagick 2.12.2 gem。

感谢Hulihan Applications确认它很可能是一个丢失的库。我尝试了从Fink Project安装包下载器来使用apt-get的建议。我在终端中运行以下命令,但无法找到libmagick9-dev库。

安装libmagick9-dev 密码:美元 $阅读包清单…完成 $ Building Dependency Tree…完成 $ E:找不到libmagick9-dev包

我需要苦练UNIX命令行技能。我从源代码安装的ImageMagick的原始副本仍然在机器上,但我不知道确切位置或如何删除它。要学的东西太多了!

经过深入挖掘,我在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

如果你得到一个类似这样的错误:

The following packages have unmet dependencies:
 libmagickwand-dev : Depends: libmagickcore4-extra (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed
                     Depends: libmagickcore-dev (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed

您可能想从这个包开始:sudo apt-get install libgvc5

详情请访问:https://askubuntu.com/a/230958/6506

在构建原生Ruby宝石时,有时你会得到一个包含“Ruby extconf.rb”的错误。这通常是由于缺少正在安装的gem的开发库,甚至是Ruby本身。

你的机器上安装了apt吗?如果没有,我建议安装它,因为这是获得大量开发库的快速而简单的方法。

如果你看到有人建议安装“libmagick9-dev”,这是一个合适的包,你会安装:

$ sudo apt-get install libmagickwand-dev imagemagick

或以cent面值:

$ yum install ImageMagick-devel

在Mac OS上,你可以使用Homebrew:

$ brew install imagemagick