【问题标题】:Library not loaded: /usr/lib/libpq.5.dylib未加载库:/usr/lib/libpq.5.dylib
【发布时间】:2013-07-21 22:29:38
【问题描述】:

最近回到一台电脑(Mac OS X Lion 10.7),我反复遇到环境问题,启动了一个新的rails应用程序,然后运行

rake db:create

我得到了这个错误输出(带有--trace):

rake aborted!
dlopen(/Users/<username>/.rvm/gems/ruby-2.0.0-p195/gems/pg-0.15.1/lib/pg_ext.bundle, 9): Library not loaded: /usr/lib/libpq.5.dylib
  Referenced from: /Users/<username>/.rvm/gems/ruby-2.0.0-p195/gems/pg-0.15.1/lib/pg_ext.bundle
  Reason: image not found - /Users/<username>/.rvm/gems/ruby-2.0.0-p195/gems/pg-0.15.1/lib/pg_ext.bundle
/Users/<username>/.rvm/gems/ruby-2.0.0-p195/gems/pg-0.15.1/lib/pg.rb:4:in `require'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195/gems/pg-0.15.1/lib/pg.rb:4:in `<top (required)>'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195/gems/bundler-1.3.5/lib/bundler/runtime.rb:72:in `require'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195/gems/bundler-1.3.5/lib/bundler/runtime.rb:72:in `block (2 levels) in require'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195/gems/bundler-1.3.5/lib/bundler/runtime.rb:70:in `each'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195/gems/bundler-1.3.5/lib/bundler/runtime.rb:70:in `block in require'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195/gems/bundler-1.3.5/lib/bundler/runtime.rb:59:in `each'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195/gems/bundler-1.3.5/lib/bundler/runtime.rb:59:in `require'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195/gems/bundler-1.3.5/lib/bundler.rb:132:in `require'
/Users/<username>/rails/<appname>/config/application.rb:7:in `<top (required)>'
/Users/<username>/rails/<appname>/Rakefile:4:in `require'
/Users/<username>/rails/<appname>/Rakefile:4:in `<top (required)>'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195@global/gems/rake-10.1.0/lib/rake/rake_module.rb:25:in `load'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195@global/gems/rake-10.1.0/lib/rake/rake_module.rb:25:in `load_rakefile'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195@global/gems/rake-10.1.0/lib/rake/application.rb:637:in `raw_load_rakefile'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195@global/gems/rake-10.1.0/lib/rake/application.rb:94:in `block in load_rakefile'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195@global/gems/rake-10.1.0/lib/rake/application.rb:165:in `standard_exception_handling'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195@global/gems/rake-10.1.0/lib/rake/application.rb:93:in `load_rakefile'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195@global/gems/rake-10.1.0/lib/rake/application.rb:77:in `block in run'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195@global/gems/rake-10.1.0/lib/rake/application.rb:165:in `standard_exception_handling'
/Users/<username>/.rvm/gems/ruby-2.0.0-p195@global/gems/rake-10.1.0/lib/rake/application.rb:75:in `run'
bin/rake:4:in `<main>'

config/application.rb:7 指的是:

Bundler.require(:default, Rails.env)

这是解决几个环境问题的结果,我敢肯定,这些问题会导致问题,但我不知道如何解决。基本上,我在使用 homebrew 时遇到了问题(brew install wget 不起作用,抱怨它已经下载了,然后说:

checking for libssl... no
configure: error: --with-ssl=openssl was given, but SSL is not available

所以我卸载了自制软件,卸载了我的外壳(鱼壳),重新安装了两者,并尝试从头开始。回想起来,这可能不是一个好主意。我似乎把事情弄得比现在更糟。

但是,brew doctor 似乎认为大多数事情都还可以。唯一让我觉得可能相关的是:

  /Users/sasha/.rvm/bin/pkg-config

(还提出了另一件事——“/usr/bin 出现在 /usr/local/bin 之前”,但这仅适用于节点、npm 和 gcov-4.2 安装,这似乎与此无关Rails 问题。)

我认为 RVM 应该有自己的 pkg-config 安装,对吧?

无论如何,OpenSSL 是由 homebrew 安装和更新的,并且看起来不错(它显示在 brew 列表中)。此外,我的 XCode 命令行工具也是最新的。

我想我的问题是是否有人知道发生了什么?我已经尝试重新排序我的路径以遵守 brew doctor、取消/重新安装很多东西、更新所有内容等,但这不会消失。超级令人沮丧,因为没有 rake 工作我基本上什么都做不了。而且我认为这个 dylib 和 openssl 问题可能是相互关联的,所以我想我会把所有这些数据都转储到这里。

有什么想法吗?非常感谢您的帮助。

谢谢!

EDIT -- 这是使用带有 pg gem 的 Rails 4.0。

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.0.0.rc1'

# Use postgresql as the database for Active Record
gem 'pg'

如果这有什么不同的话。

UPDATE -- 似乎与this problem 相关,我也有。我认为 rake 因为 pg 而不能工作,因为 crpyto/openssl 而不能工作。

【问题讨论】:

    标签: ruby-on-rails macos openssl homebrew pkg-config


    【解决方案1】:

    问题是基于一个莫名其妙的空 libssl.dylib 文件。有一个备份(libssl.dylib.BAK),我只是用它覆盖了空文件,然后——噗——所有问题都消失了。一开始不知道这是怎么发生的,但是如果有人遇到类似的问题,我会在 usr/lib/ 中查找 .BAK 文件并(如果有的话)查看相关文件是否为空。

    【讨论】:

      猜你喜欢
      • 2012-02-19
      • 1970-01-01
      • 1970-01-01
      • 2012-02-29
      • 2014-09-28
      • 2015-05-15
      • 2021-11-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多