libMagickCore.so.4:无法打开共享对象文件:没有这样的文件或目录

时间:2013-05-22 06:03:37

标签: ruby-on-rails ubuntu

更新

gem install rmagick解决了这个问题。

=====================================

当我运行我的rails应用程序将我的ubuntu升级到12.10后,它会出错

  

libMagickCore.so.4:无法打开共享对象文件:没有这样的文件或目录 - /home/pramod/.rvm/gems/ruby-1.9.3-p327/gems/rmagick-2.13.2/lib/RMagick2的.so

以下路径存在于我的系统中。

  

/home/pramod/.rvm/gems/ruby-1.9.3-p327/gems/rmagick-2.13.2/lib/RMagick2.so

我是linux的新手,对如何解决它并不太了解。任何帮助深表感谢。

5 个答案:

答案 0 :(得分:21)

升级时,您可能会丢失已编译gem中对库文件的引用。要解决这个问题,只需重新编译gem(在本例中为rmagick gem)。根据您的服务器设置,您可以执行此操作 gem pristine rmagick 要么 使用bundler时bundle exec gem pristine rmagick

答案 1 :(得分:6)

将以下内容添加到.bashrc中再试一次

export LD_LIBRARY_PATH=/usr/local/lib

如果,上面的命令不起作用意味着安装ImageMagick配置rmagick。 尝试,

   gem uninstall rmagick
   gem install rmagick

答案 2 :(得分:2)

这对我有用(虽然也试过导出和宝石重新安装解决方案,这可能也有所帮助,但没有做完整的工作......):

ldconfig /usr/local/lib

答案 3 :(得分:1)

我有同样的问题,升级到版本2.15.3为我工作

答案 4 :(得分:0)

在我的情况下,我在 vendor / bundle 下安装了所有本机库,因为我们在服务器上使用bundle install --deployment

在此设置中,gem pristine rmagickgem uninstall rmagick; gem install vendor/cache/rmagick-<version>.gem都没有帮助。

我必须删除 vendor / bundle 并再次执行捆绑安装 - 部署 rm -r vendor/bundle; bundle install --deployment

这些命令应该从rails应用程序的根目录运行。