Ключевая проблема заключается в том, что ваш postgresql пытался найти, libreadline.6.2.dylib
но ваша readline
версия есть 7.0
, так что связана только библиотека 7.
Я не думаю, что обновление 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
В этом случае вся связанная библиотека становится 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, я думаю, вам стоит подумать об обновлении.
Обновление: 02/02/2019
Что делать, если старая версия не установлена?
Homebrew
не предоставляет способ установить формулу старой версии. А начиная с версии 2.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
- Сбросить репо
Следуя этим шагам, вы можете переустановить старую версию формулы.