2012-03-05 66 views
2

我在启动我的项目服务器时遇到下面的错误。我试图从昨天开始解决,但无法解决它。有人会帮助我。libruby.so.1.8:无法打开共享目标文件:没有这样的文件或目录

=> Booting WEBrick 
=> Rails 2.3.14 application starting on http://0.0.0.0:3001 
Encountered error loading /home/success/prj/myprj/vendor/gems/mysql2-0.2.18/precompiled/i686-linux/1.8.7/mysql2/mysql2.so: libruby.so.1.8: cannot open shared object file: No such file or directory - /home/success/prj/myprj/vendor/gems/mysql2-0.2.18/precompiled/i686-linux/1.8.7/mysql2/mysql2.so 
Encountered error loading /home/success/prj/myprj/vendor/gems/mysql2-0.2.18/precompiled/i686-linux/1.8.7/mysql2/mysql2.so: libruby.so.1.8: cannot open shared object file: No such file or directory - /home/success/prj/myprj/vendor/gems/mysql2-0.2.18/precompiled/i686-linux/1.8.7/mysql2/mysql2.so 
/home/success/prj/eschool/vendor/gems/mysql2-0.2.18/lib/mysql2/mysql2.rb:13: Failed to load mysql2 binary for your platform (i686-linux/1.8.7) Run ./compile_native_library.rb (RuntimeError) 
     from /home/success/prj/myprj/vendor/gems/rubygems-update-1.7.2/lib/rubygems/custom_require.rb:36:in `gem_original_require' 
     from /home/success/prj/myprj/vendor/gems/rubygems-update-1.7.2/lib/rubygems/custom_require.rb:36:in `require' 
     from /home/success/prj/myprj/vendor/rails/activesupport/lib/active_support/dependencies.rb:182:in `require' 
     from /home/success/prj/myprj/vendor/rails/activesupport/lib/active_support/dependencies.rb:547:in `new_constants_in' 
     from /home/success/prj/myprj/vendor/rails/activesupport/lib/active_support/dependencies.rb:182:in `require' 
     from /home/success/prj/myprj/vendor/gems/mysql2-0.2.18/lib/mysql2.rb:9 

UPDATE:

[email protected]:/usr/lib$ ls -l libruby* 
lrwxrwxrwx 1 root root  19 2012-02-22 07:07 libruby1.8.so -> libruby1.8.so.1.8.7 
lrwxrwxrwx 1 root root  19 2012-02-22 07:07 libruby1.8.so.1.8 -> libruby1.8.so.1.8.7 
-rw-r--r-- 1 root root 956360 2012-02-22 07:22 libruby1.8.so.1.8.7 
-rw-r--r-- 1 root root 1436438 2012-02-22 07:22 libruby1.8-static.a 
+0

是的文件是有..请告诉我我如何检查许可? – 2012-03-05 05:21:22

+0

我已更新许可详情。请告诉我是否需要更改任何内容。 – 2012-03-05 05:48:12

+0

我已经试过这个,但没有工作..谢谢你的快速回复 – 2012-03-05 05:51:22

回答

2

我解决了以下步骤如下这个问题:

  1. 卸载所有mysql2宝石
  2. 安装mysql2,版本< 0.3
  3. vendor/gems目录
  4. 执行gem unpack mysql2
  5. 执行rake gems:refresh_specs
  6. 执行rake gems:build
  7. 添加config.gem mysql2environment.rb
  8. 重启服务器
0

快速修复:

cd /usr/lib 
ln -s libruby1.8.so libruby.so.1.8 

ldd /home/success/prj/myprj/vendor/gems/mysql2-0.2.18/precompiled/i686-linux/1.8.7/mysql2/mysql2.so 
0

如果库已经存在和它不能够找到它,并说无法找到共享对象文件可能意味着

你需要运行/ sbin/ldconfig命令以重新生成共享库高速缓存。

Linux questions

这必将有助于当你有些感动库的标准路径和它不会被缓存。
通常ldconfig会在系统启动时运行。这就是为什么很少有问题在重新启动后关闭。

相关问题