I'm no Homebrew expert but I think it has "upgraded" me from readline version 6.x to 7.0 sometime after 9/15/16:
eat@eric-macbook:Homebrew$ brew info readline
readline: stable 7.0 (bottled) [keg-only]
Library for command-line editing
https://tiswww.case.edu/php/chet/readline/rltop.html
/usr/local/Cellar/readline/7.0 (45 files, 2M)
This has caused headaches for my 9.4.5 Homebrew version of Postgresql (I need the older 9.4 for comparability reasons):
eat@eric-macbook:~$ psql --version
dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.6.dylib
Referenced from: /usr/local/Cellar/postgresql/9.4.5/bin/psql
Reason: image not found
Trace/BPT trap: 5
Unfortunately I can't find a 6.x version of readline on Homebrew to revert to - only 7.0 seems to be available(?).
My question is twofold:
- Is the the readline version mismatch the cause of my postgres/psql problem?
- If so, how do I return to 6.x with Homebrew to correct the problem?
Thank you in advance!
Just reinstall
postgresql94
package, the PostgreSQL 9.4 will use the newreadline
package:For people coming from Rails with this issue you can just add the readline gem and run
bundle install
.I was able to overcome this with a blanket
brew upgrade
(upgrade all brew-managed packages).To those who still facing this issue but cannot download the readline 6.3.8 from the homebrew package. You can try this solution. (Refer from here)
If you would use Sam Kah Chiin's solution, you can ignore the 404.
Apply the extra change so it would work on new macOS:
Do
sudo update_dyld_shared_cache
at the endTo answer the specific question.
You can switch between version of installed brew packages which are still around locally as explained in this question: Homebrew install specific version of formula?
To downgrade to readline 6.x the following command worked for me: