【问题标题】:libmysqlclient_r.so.16: cannot open shared object file: No such file or directory DREAMHOSTlibmysqlclient_r.so.16:无法打开共享对象文件:没有这样的文件或目录 DREAMHOST
【发布时间】:2014-12-22 07:50:27
【问题描述】:

我在 DREAMHOST 上部署了一个 RoR 应用。以下是当前正在运行的版本

  • Ruby:ruby 1.8.7(2011-06-30 补丁级别 352)[x86_64-linux]
  • Rails:Rails 3.2.3

我尝试加载主页时的错误如下:

libmysqlclient_r.so.16: cannot open shared object file: No such file or directory - /gems/ruby/1.8/gems/mysql2-0.3.13/lib/mysql2/mysql2.so (LoadError)
/gems/ruby/1.8/gems/mysql2-0.3.13/lib/mysql2/mysql2.so
/gems/ruby/1.8/gems/mysql2-0.3.13/lib/mysql2.rb:8

/usr/lib/ruby/vendor_ruby/bundler/runtime.rb:68:in `require'
/usr/lib/ruby/vendor_ruby/bundler/runtime.rb:68:in `require'
/usr/lib/ruby/vendor_ruby/bundler/runtime.rb:66:in `each'
/usr/lib/ruby/vendor_ruby/bundler/runtime.rb:66:in `require'
/usr/lib/ruby/vendor_ruby/bundler/runtime.rb:55:in `each'
/usr/lib/ruby/vendor_ruby/bundler/runtime.rb:55:in `require'
/usr/lib/ruby/vendor_ruby/bundler.rb:120:in `require'
/config/application.rb:7 
/config/environment.rb:2:in `require'
/config/environment.rb:2
config.ru:3:in `require'
config.ru:3

我已经尝试更新 mysql2 gem,卸载并重新安装完成bundle install,这是成功的。我试过wget -O 并添加了文件。但错误仍然存​​在。 我曾尝试寻找答案,但运气不佳。

这是用于生产环境的。任何反馈将不胜感激。

【问题讨论】:

    标签: ruby-on-rails ruby rubygems mysql2 dreamhost


    【解决方案1】:

    您的问题与宝石无关。 libmysqlclient_r 抱怨无法找到 mysql2.so,因为它在您的机器上丢失了。您需要处理它而不是使用bundler,而是通过您的系统包管理器(即对于Debian,您可以使用apt-getaptitude)。

    首先,定位到你的libmysqlclient_r.so的绝对路径:

    dpkg -S libmysqlclient_r.so.16
    

    现在你已经有了绝对路径,所以运行:

    ldd ABSOLUTE_PATH_TO_YOUR_LIB/libmysqlclient_r.so
    

    ldd 列出给定库的依赖关系。至少会丢失一个文件。现在您所要做的就是安装丢失的软件包。

    【讨论】:

    • 感谢您的回复。dpkg 命令返回“无路径匹配模式”结果。但是 dpkg -S libmysqlclient_r.so 列出了 3 个路径
    • 是的,它应该返回类似$ dpkg -S libmysqlclient_r.so libmysqlclient-dev: /usr/lib/x86_64-linux-gnu/libmysqlclient_r.so; ... 的内容。第一条路径是您感兴趣的路径。
    • 谢谢,我得到了 linux-vdso.so.1, libz.so.1, .... 在 Dreamhost 服务器中,我们将无法使用 apt-get。有没有其他方法可以解决这个问题?
    猜你喜欢
    • 2013-01-24
    • 1970-01-01
    • 2015-04-12
    • 2018-11-26
    • 2019-11-27
    • 2020-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多