第0.14.1页:dyld:惰性符号绑定失败:未找到符号:_PQconnectdb

时间:2015-12-10 08:05:32

标签: macos gem osx-elcapitan pg

在El Capitan上运行postgresql 9.4.5和pg 0.14.1,遇到以下错误,然后在执行第一个查询时退出Rails控制台:

  

dyld:惰性符号绑定失败:未找到符号:_PQconnectdb     参考自:/Users/christian/Documents/Development/onelogin.com/vendor/bundle/gems/pg-0.14.1/lib/pg_ext.bundle     期望:平面命名空间

     

dyld:未找到符号:_PQconnectdb     参考自:/Users/christian/Documents/Development/onelogin.com/vendor/bundle/gems/pg-0.14.1/lib/pg_ext.bundle     期望:平面命名空间

     

Trace / BPT trap:5

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

这意味着gem编译的Object库已丢失或由于某种原因不再可加载。通常,您需要在操作系统升级后或安装新版本的XCode命令行工具后重新安装PostgreSQL。

您可以查看gem正在尝试加载的库(无论如何在OSX上):

libpq

看起来应该是这样的:

file $(otool -L /Users/christian/Documents/Development/onelogin.com/vendor/bundle/gems/pg-0.14.1/lib/pg_ext.bundle | grep libpq | cut -f1 -d' ')

我的PostgreSQL是通过Homebrew安装的,所以你的路径可能不同,但它至少应该显示一个共享库。如果它看起来没问题,请在评论中发布它所说的内容,我会尽力帮助。