重要な問題は、あなたのpostgresqlがを見つけようとしていたことですがlibreadline.6.2.dylib
、あなたのreadline
バージョン7.0
であるので、7のlibのみがリンクされています。
postgresqlのアップグレードは良い考えではないと思います。これは簡単ではなく、特にすでにデータベースデータがある場合は、多くの問題を引き起こす可能性があります。
私がすることは、のバージョンを切り替えることです readline
。チェックbrew info readline
すると、別のバージョンが見つかります。私のバージョンは6.3.8
なので、次のコマンドを実行してそのバージョンに切り替えます。
$ brew switch readline 6.3.8
6.3.8に変更され、リンクが作成されます。
Cleaning /usr/local/Cellar/readline/6.3.8
Cleaning /usr/local/Cellar/readline/7.0.1
Opt link created for /usr/local/Cellar/readline/6.3.8
この場合、リンクされたすべてのlibは6バージョンになり、コマンドラインは機能します。
$ ls /usr/local/opt/readline/lib/
libhistory.6.2.dylib libhistory.dylib libreadline.a
libhistory.6.3.dylib libreadline.6.2.dylib libreadline.dylib
libhistory.6.dylib libreadline.6.3.dylib
libhistory.a libreadline.6.dylib
ただし、異なるバージョンのreadlineを使用する異なるアプリがある場合は、アップグレードを検討する必要があります。
アップデート:06/02/2019
古いバージョンがインストールされていない場合はどうなりますか?
Homebrew
古いバージョンの数式をインストールする方法はありません。そしてv2.0.0以降、それは実行されますbrew cleanup
30日ごとにデフォルトの動作としてれます。そのため、誤っbrew
て古いバージョンを更新して削除してしまう可能性があります。
古いバージョンをインストールする手順は次のとおりです。
homebrew-core
ディレクトリに移動します。
$ cd $(brew --repository)/Library/Taps/homebrew/homebrew-core
- 古い式のハッシュを確認します。
$ git log master -- Formula/readline.rb
- ハッシュ値の対応するバージョンを見つける
commit 1dd4221c35716d6bec363ad3425ef93ffe7d9b9f
Author: BrewTestBot <brew-test-bot@googlegroups.com>
Date: Wed Aug 15 21:51:16 2018 +0000
readline: update 7.0.5 bottle.
- 古い数式へのチェックアウト:
$ git checkout 1dd4221c35716d6bec363ad3425ef93ffe7d9b9f Formula/readline.rb
- 式を再インストールします。
$ brew reinstall readline
- リポジトリをリセットする
これらの手順に従って、古いバージョンの数式を再インストールできます。