주요 문제는 postgresql이 찾으려고 libreadline.6.2.dylib했지만 readline버전은7.0 이므로 7의 lib 만 연결되어 있다는 것입니다.
postgresql을 업그레이드하는 것은 좋은 생각이라고 생각하지 않습니다. 쉬운 일이 아니며 특히 데이터베이스 데이터가있는 경우 많은 문제가 발생할 수 있습니다.
내가하는 일은의 버전을 전환하는 것입니다 readline. 확인하면 brew info readline다른 버전을 찾을 수 있습니다. mine is 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 cleanup30 일마다 기본 동작으로 실행 됩니다. 따라서 실수로 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
- 리포지토리 재설정
이러한 단계에 따라 이전 버전의 수식을 다시 설치할 수 있습니다.