Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Homebrew pyenv install error dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib

After installing pyenv from Homebrew on MacOS Mojave I am getting build errors when attempting to install any python versions.

When running pyenv install for any version the build will fail with error:

dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib
  Referenced from: /usr/local/bin/awk
  Reason: image not found
like image 582
Goran Avatar asked Feb 20 '19 00:02

Goran


2 Answers

ln -sf /usr/local/opt/readline/lib/libreadline.8.0.dylib /usr/local/opt/readline/lib/libreadline.7.dylib
like image 105
sensorario Avatar answered Nov 03 '22 14:11

sensorario


The solution for me was to force link the readline 8 lib that I had under /usr/local/opt/readline/lib/.

> cd /usr/local/opt/readline/lib/
> ls
libhistory.8.0.dylib  libhistory.a          libreadline.8.dylib   libreadline.dylib
libhistory.8.dylib    libhistory.dylib      libreadline.8.0.dylib libreadline.a         pkgconfig

Since I have a newer version of the readline lib, I tried to force it to find the one I have by symlinking it to the filename it was looking for. e.g.

> cd /usr/local/opt/readline/lib/
> ln -s libreadline.8.0.dylib libreadline.7.dylib
> ls
libhistory.8.0.dylib  libhistory.a          libreadline.7.dylib   libreadline.8.dylib   libreadline.dylib
libhistory.8.dylib    libhistory.dylib      libreadline.8.0.dylib libreadline.a         pkgconfig

pyenv install x.y.z should now be working (or at least throw a different error ;).

like image 35
Goran Avatar answered Nov 03 '22 15:11

Goran