我只是用自制程序安装了posgresql,当我继续键入命令时

psql

我得到以下错误:

dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.6.2.dylib
Referenced from: /usr/local/bin/psql
Reason: image not found
[1]    69711 trace trap  psql

有人知道是怎么回事吗?


当前回答

在我看来,问题是关于更新readline包。 Postgres尝试使用/usr/local/opt/readline/lib/libreadline.7。在我的例子中是Dylib。所以我只是创建了一个符号链接到现有版本的库/usr/local/opt/readline/lib/libreadline.8.dylib。

对我有用:

ln -s /usr/local/opt/readline/lib/libreadline.8.dylib /usr/local/opt/readline/lib/libreadline.7.dylib

其他回答

下面的命令对我有用:

brew reinstall postgresql
brew postgresql-upgrade-database

我发现这个解决方案很有用

brew upgrade bash

https://github.com/Homebrew/homebrew-core/issues/5799

如果情况是你有一个更高版本的readline,比如7.0。你可以这样做

cd /usr/local/opt/readline/lib    
ln libreadline.7.0.dylib libreadline.6.2.dylib

由于一些未知的原因,当这个错误出现在下一个版本的Readline时,我的RVM似乎无法找到正确的,无论我如何符号链接它,抛出:

库未加载:/usr/local/opt/readline/lib/libreadline.7。dylib (LoadError)

我最终将gem rb-readline添加到我的Gemfile中,并进行了另一个bundle安装,它开始工作了。

我…只是不知道。

如果你没有安装readline,首先安装它:

Brew安装readline

对我来说,我得到了这个错误,即使我安装了readline。重新安装readline成功了:

brew reinstall readline