问题在CentOS安装RMagick rubygem 5
我在安装在CentOS 5的RMagick rubygem问题,我已经跟着http://rmagick.rubyforge.org/install2-linux.html的详细步骤,但是当我尝试:问题在CentOS安装RMagick rubygem 5
sudo gem install rmagick
结果是:
Building native extensions. This could take a while...
ERROR: Error installing rmagick:
ERROR: Failed to build gem native extension.
/usr/local/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.11.0. Can't find Magick-config in /usr/bin:/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=/usr/local/bin/ruby
Gem files will remain installed in /usr/local/lib/ruby/gems/1.8/gems/rmagick-2.11.0 for inspection.
Results logged to /usr/local/lib/ruby/gems/1.8/gems/rmagick-2.11.0/ext/RMagick/gem_make.out
目录/ usr/local/bin包含Magick-config,但我一直没有能够让rubygems看到那里。我试过以下,但结果是相同的:
sudo gem install rmagick -- --with-opt-dir=/usr/local/bin
任何意见,将不胜感激。
所以,我终于成功地安装rmagick rubygem的17年1月15日版本!下面是我所做的:
- 卸载的ImageMagick 6.5.4-9,而且我已经从源
sudo yum install ImageMagick
sudo yum install ImageMagick-devel
curl -O http://www.zacharywhitley.com/linux/rpms/fedora/core/6/i386/msttcorefonts-2.0-1.noarch.rpm
sudo rpm -ivh msttcorefonts-2.0-1.noarch.rpm
ln -s /usr/share/fonts/msttcorefonts/ /usr/share/fonts/default/TrueType
安装委托库
sudo gem install rmagick -v 1.15.17 --no-rdoc --no-ri
来自David Bock和Will的博客条目是无价的。
rmagick由于依赖于其他软件包等而出名是很难安装的。我刚刚在Ubuntu上玩过这个游戏,其诀窍就是安装正确的软件包,包括开发包等。我不熟悉CentOS,但有人可能会用正确的软件包加入。
如果一切都失败了,通常可以使用从源代码构建和安装ImageMagick。
编辑:寻找一个相关的问题,我看到以下内容:
在某些平台(CentOS的5.2),我不得不安装RMagick的特定版本,因为默认库为我的包管理器(YUM)只有旧版本的RMagick devel库。我通过安装此版本:
gem install rmagick -v 1.15.13
我已经尝试安装上述建议的旧版本,但它与安装的软件包不兼容。然后,我根据http://rmagick.rubyforge.org/install2-linux.html的建议首先安装了代理,然后从源代码配置,构建并安装ImageMagick。 我能够从源代码安装RMagick,但我需要它作为RubyGem安装,因为我的Rails应用程序中存在依赖关系。我想知道的是如何强制gem install在/ usr/local/bin中找到Magick-config。 – 2009-08-10 13:21:53
可能工作的肮脏的黑客是将它符号链接到它看起来的某个地方。然而,根据我的经验,一旦你通过Magick-config类型的问题,那么在别的地方会出现另一个错误 - 我认为根本原因通常没有一组兼容的软件包。在Ubuntu上,我首先删除了与ImageMagick相关的所有软件包,然后建立了一个似乎可以通过搜索其他人所做的以及试验和错误的工作集。就像你一样,我必须把它当作宝石,出于同样的原因。由于整个服务器构建都是自动化的,因此还必须从包中获取imagemagick。 – frankodwyer 2009-08-10 13:35:43
感谢您的回复。您的意见鼓励我回到导致基于软件包成功安装1.15.17的路径上。 – 2009-08-11 00:28:15
我通过暂时符合/usr/local/bin/Magick-config
到/usr/bin/Magick-conf
来解决此问题,因此gem install可以找到这个Magick-config可执行文件。
在我的情况下,我从源安装了ImageMagick与--prefix=/usr/local
。出于某种原因,宝石安装不想在那里寻找配置,即使是gem install --local ../rmagick-2.12.2.gem -- -with-opt-dir=/usr/local/bin
。运行yum install ImageMagick-devel
会得到那里的二进制文件,但是然后gem install会说ImageMagick是错误的版本。
保持以下最投票回答的指示后,收到此错误:
RMagick: unable to read font `(null)'.
,所以我想补充到第7步,从更新带到大卫·博克的博客:
gem install rmagick -v 1.15.17 --no-rdoc --no-ri -- --disable-htmldoc
禁用html文档对于避免进一步的错误是至关重要的,如果你的字体文件使rmagick不高兴。只是大约2个小时的这个问题挣扎的结果。
Centos 5.5 ImageMagick是遗留的,所以从源代码安装到可以使用rmagick。
获取源RPM
wget ftp://ftp.kddlabs.co.jp/graphics/ImageMagick/linux/SRPMS/ImageMagick.src.rpm
rpm -ivh --nomd5 ImageMagick.src.rpm
cd /usr/src/redhat/SPECS
rpmbuild -ba ImageMagick.spec
也许你得到的依赖错误:
- 的perl-devel的
- 碧玉devel的
- 中的djvulibre-devel的
添加到你的/etc/yum.repos.d/dag。回购
[dag]
name=Dag RPM Repository for CentOS5
baseurl=http://ftp.riken.jp/Linux/dag/redhat/el5/en/$basearch/dag/
enabled=0
gpgcheck=1
然后导入GPG密钥和安装中的djvulibre-devel的
rpm --import http://ftp.riken.jp/Linux/dag/RPM-GPG-KEY.dag.txt
yum --enablerepo=dag install djvulibre-devel
然后检查是否可以使RPM:
rpmbuild -ba ImageMagick.spec
如果你得到的perl-devel的依赖错误。
yum install perl
然后编辑ImageMagick.spec和替换 “的perl-devel的” 为 “perl的”,再次保存和的rpmbuild。
rpmbuild -ba ImageMagick.spec
所以安装的其它相关性:
yum install freetype
yum install gd-devel
wget http://www.osresources.com/files/centos-windows-fonts/msfonts.tbz
mkdir /usr/share/fonts/default/TrueType
tar xvjpf msfonts.tbz -C /usr/share/fonts/default/TrueType/
让我们来安装它:
cd /usr/src/redhat/RPMS/i386
rpm -Uvh ImageMagick-*
毕竟,你可以测试是否已安装RMagick:
ruby -rrubygems -e "require 'RMagick'; puts Magick::Long_version;"
基于
:
hi.baidu.com/rainchen/blog/item/089ef7364497de320a55a9a3.html
mobile-dev.izanagi-izanami.net/blog/?P = 48
我最近回迁的ImageMagick 6.5.4.7从CentOS6到CentOS5所以安装rmagick应该更容易,现在:
rpm -Uvh http://rbel.co/rbel5
yum install ImageMagick-devel ImageMagick-c++-devel
gem install rmagick
谢谢,包装很好地 – gerrit 2012-01-05 16:19:44
惊人。谢谢一堆。我能够成功升级imagemagick并安装rmagick gem。 – 2012-02-15 16:18:49
谢谢各位,Rmagick非常棒,但是当你试图在centos上安装它时很痛苦 – 2012-05-22 22:13:52
的answer from rubiojr为我工作,但rbel.co是在下降此时此刻。您可以使用rbel.frameos.org来代替:
rpm -Uvh http://rbel.frameos.org/rbel5
yum install ImageMagick-devel ImageMagick-c++-devel
gem install rmagick
字体链接似乎不起作用,所以我按照http://www.go2linux.org/msttcorefonts-true-type-fonts-on-linux上的说明来安装字体。像魅力一样工作。 – 2010-03-25 00:54:54
最后一步失败了,直到我添加了ruby头文件:sudo yum install ruby-devel – mveerman 2010-04-20 21:48:22
为我工作,谢谢Keith&Beerlington。其实我遇到了更多的问题,Zend Server CE已经安装了一个不同版本的ImageMagick(没有devel,所以不能gem inst rmagick)在我的系统上。为了解决这个问题,我需要将LD_LIBRARY_PATH env变量正确设置为/ usr/lib(而不是ZSCE位置)并将其传递给apache。为了与乘客做到这一点,我已经将我的apache指令“PassengerRuby/usr/bin/ruby”转换为“PassengerRuby/usr/bin/ruby_env”并填充此文件: #!/ bin/sh export LD_LIBRARY_PATH =/usr/lib: exec“/ usr/local/bin/ruby”“$ @” – maraspin 2010-06-15 21:03:57