Library not loaded: /usr/local/opt/readline/lib/libreadline.6.dylib (LoadError)

This command fix my problem:

ln -s /usr/local/opt/readline/lib/libreadline.7.0.dylib /usr/local/opt/readline/lib/libreadline.6.dylib

OR

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

I wrote a Gist about this problem here. There are many people sharing their solutions there too.


Add this gem to your Gemfile and run bundle install:

gem 'rb-readline'

I had the same underlying issue, which also occurred after a Mac OSX update. My problem manifested using psql:

>> psql --help

dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib
  Referenced from: /usr/local/bin/psql
  Reason: image not found

OK, so this is telling me that it's expecting libreadline.7.dylib in /usr/local/opt/readline/lib. When I browse that directory, I can see I have libreadline.8.0.dylib:

>> ls -l /usr/local/opt/readline/lib

total 1448
 libhistory.8.0.dylib
 libhistory.8.dylib -> libhistory.8.0.dylib
 libhistory.a
 libhistory.dylib -> libhistory.8.0.dylib
 libreadline.8.0.dylib
 libreadline.8.dylib -> libreadline.8.0.dylib
 libreadline.a
 libreadline.dylib -> libreadline.8.0.dylib

I made the assumption that emulating libreadline.7.dylib by using symlinking to libreadline.8.0.dylib could resolve my problem:

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

Which makes my call to psql work again, but doesn't address how the problem started in the first place.


I installed the ruby of same version over again. Then the error message is gone now. I use macbook and homebrew.

$ rbenv install 2.3.8
rbenv: /Users/klee/.rbenv/versions/2.3.8 already exists
continue with installation? (y/N) y
ruby-build: use openssl from homebrew
Downloading ruby-2.3.8.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.8.tar.bz2
Installing ruby-2.3.8...
ruby-build: use readline from homebrew
Installed ruby-2.3.8 to /Users/klee/.rbenv/versions/2.3.8

Just recompiled ruby version using updated readline from homebrew and it works like a charm.

rbenv install $(rbenv version-name)