在rails应用程序中使用rmagick时出错

我在尝试运行rails应用程序时遇到以下错误: –

/opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/rmagick-2.12.2/lib/RMagick2.so:libMagickCore.so.4:无法打开共享对象文件:没有这样的文件或/opt/ruby-enterprise-1.8中的目录 – /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/rmagick-2.12.2/lib/RMagick2.so(LoadError)。 7-2010.02 / lib / ruby​​ / site_ruby / 1.8 / ruby​​gems / custom_require.rb:36:in require' from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-2.1.0/lib/active_support/dependencies.rb:509:in require’from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-2.1.0/lib/active_support/ dependencies.rb:354:in new_constants_in' from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-2.1.0/lib/active_support/dependencies.rb:509:in来自/opt/ruby-enterprise-1.8.7的’from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/rmagick-2.12.2/lib/RMagick.rb:11 -2010.02 / lib / ruby​​ / site_ruby / 1.8 / ruby​​gems / custom_require.rb:36:in gem_original_require' from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in gem_original_require' from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in require’from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby /gems/1.8/gems/activesupport-2.1.0/lib/active_support/dependencies.rb:509:in require' from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-2.1.0/lib/active_support/dependencies.rb:354:in new_constants_in’from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-2.1.0/lib /active_support/dependencies.rb:509:in require' from /home/amol/Amol_Backup/AMOL_BACKUP_20091021/PROJECTS/Fitsmi/life180/config/environment.rb:12 from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in gem_original_require’来自/opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in require' from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-2.1.0/lib/active_support/dependencies.rb:509:in / opt / ruby​​-企业1。 8.7-2010.02 / lib / ruby​​ / gems / 1.8 / gems / activesupport-2.1.0 / lib / active_support / dependencies.rb:354:in new_constants_in' from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-2.1.0/lib/active_support/dependencies.rb:509:in require’from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/ rails-2.1.0 / lib / commands / servers / webrick.rb:59来自/opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in gem_original_require' from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in require’from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby /gems/1.8/gems/activesupport-2.1.0/lib/active_support/dependencies.rb:509:in require' from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-2.1.0/lib/active_support/dependencies.rb:354:in new_constants_in’from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-2.1.0/lib /active_support/dependencies.rb:509:in require' from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/rails-2.1.0/lib/commands/server.rb:39 from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in require' from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/rails-2.1.0/lib/commands/server.rb:39 from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in gem_original_require’来自/opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:在脚本/服务器的`require’中:3

文件RMagick2.so存在于给定路径/opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/rmagick-2.12.2/lib中。

以下是我的应用程序使用的版本: –

rails 2.3.5
ruby 1.8.7(2009-12-24 patchlevel 248)[x86_64-linux],MBARI 0x6770,Ruby Enterprise Edition 2010.02
rmagick(2.12.2)
imagemagick 6.2.8.0-4.el5-5.3

操作系统: – Centos 5

提前致谢….

我通过以下更改在RHEL5上解决了这个问题:

  • 创建/etc/ld.so.conf.d/local.conf
  • 添加以下行:

    / usr / lib目录
    在/ usr / local / lib目录

  • 运行ldconfig

这为我解决了这个问题。 (到下一个依赖…)

这个Linux系统究竟是什么? 似乎缺少libMagickCore.so.4 。 如果我查看我的Ubuntu,我看它属于包libmagickcoreX", where the X`代表版本。我见过的最多Ubuntu是版本3,但我见过版本4的RPM,因此,在您的系统中,您可以安装该软件包版本。