当我试图安装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重新安装了它们。超级简单,有一个巨大的包目录,更新/卸载也很容易!
在构建原生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
更新
如果你是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的原始副本仍然在机器上,但我不知道确切位置或如何删除它。要学的东西太多了!
对于那些不想使用John Maddox编写的优秀安装脚本的源代码构建方法的人来说,下面的脚本在我安装CentOS 6.2时是有效的。(根据需要调整包管理器)。
yum install -y {libwmf,lcms,ghostscript,ImageMagick}{,-devel}
gem install rmagick
再说一次,如果你使用发行版的包管理器,并且真的希望保持它的理智,这主要是有兴趣的。
我有这个问题时,我已经安装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
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
无法安装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