我最近将服务器从Ubuntu 8.04升级到了10.04,似乎已经破坏了RMagick,出现了这个错误:
libWand.so.10:无法打开共享对象文件:没有这样的文件或目录 - /opt/ruby-enterprise-1.8.7-2009.10/lib/ruby/gems/1.8/gems/rmagick-2.12.2/ LIB / RMagick2.so
在网上寻找想法,我决定尝试将其符号化为libMagickCore.so.2.0.1,将libWand.so.10符号化为libMagickWand.so.2.0.1。这给我一个新的错误:
使用ImageMagick 6.3.7配置了RMagick的安装,但正在使用ImageMagick 6.5.7-8。
从那时起,我一直在尝试各种谷歌搜索,卸载和重新安装RMagick和各种ImageMagick库,没有运气。我认为有些库可能是从源代码构建的,或者是以前的工作人员“手动”安装的。
---(稍后补充:)
似乎修复了RMagick 2.13.0或2.13.1以使用ImageMagick 6.5.7,但是当我尝试将其中一个版本指定给gem install时,它要么:(a)似乎要安装,但是只有2.12.2显示在'gem list'中,我的rails应用程序只加载2.12.2; (b)错误“错误:在任何存储库中找不到有效的宝石'rmagick'(= 2.13.0)”如果我指定2.13.0。 “gem -v”说1.3.5。
---(及以后:)
如上所述将RUbyGems更新为1.3.7:http://wiki.joyent.com/all-accelerators:kb:rubygems没有改变任何内容。
答案 0 :(得分:3)
我遇到了同样的问题。安装libmagickwand为我做了诀窍......
sudo apt-get install libmagickwand-dev
答案 1 :(得分:1)
只需使用ruby 1.9.1而不是ruby 1.8。我用过这篇博文: http://blog.moonflare.com/2011/10/25/installing-ruby-1-9-2-and-gems-on-ubuntu-11-10/
最重要的部分是
sudo apt-get install ruby1.9.1 sudo update-alternatives --config ruby (select the option reading “/usr/bin/ruby1.9.1″) sudo update-alternatives --config gem (select the option reading “/usr/bin/gem1.9.1″)
我用它解决了
答案 2 :(得分:0)
看起来,即使/ opt / ruby-enterprise / bin在我的$ PATH中,即使是'哪个宝石'报告'/ opt / ruby-enterprise / bin / gem',不知怎的,当我试图' sudo gem install rmagick'它安装在/usr/lib/ruby/gems/1.8/gems下,而不是/opt/ruby-enterprise-1.8.7-2009.10/lib/ruby/gems/1.8/gems它所属的地方,和SOMEHOW一样,明确输入'sudo / opt / ruby-enterprise / bin / gem install rmagick -v = 2.13.1'得到RMagick 2.13.1,它与ImageMagick的'apt-get install imagemagick'版本兼容(6.6。 5,我的应用程序成功加载了/ usr / local / bin中的那个。这是因为:Using Ruby Enterprise Edition, gems are not installed where I would expect
无论如何,我的问题现在已经解决,但是如何正确卸载几年前手动安装的ImageMagick 6.5.7,这是您安装RMagick时必须做的事情。我很确定我没有任何方便的资源来“卸载”。有人知道我是否可以安全删除文件?