Readline de Mac: biblioteca no cargada

15

Estoy trabajando en una Mac, Sierra 10.12.3, y estoy tratando de acceder a una base de datos PostgreSQL a través del psqlcomando, pero arrojó el error

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

Hace un día o dos, estaba trabajando con alguien y necesitaba instalar pip, así que corrí brew install pip, y todo estuvo bien. Esta es la primera vez que intento ejecutar psqldesde entonces y no estoy seguro de que esto tenga algo que ver con mi problema, pero parece probable ya que no he realizado ningún otro cambio.

Ahora hice un poco de trabajo de detective y descubrí que si iba a, de /usr/local/opt/hecho, había un readlinedirectorio de alias que apuntaba a /usr/local/Cellar/readline/7.0.1(la versión 7.0.1 también parecía haberse instalado en algún momento, ¿tal vez como parte de pip? Tal vez lo hice por error ...) por lo que tenía sentido que se produjera el error original. Cambié el alias para señalar /usr/local/Cellar/readline/6.3.8y el error cambió ligeramente:

dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.6.dylib
Referenced from: /usr/local/bin/psql
Reason: no suitable image found.  Did find:
/usr/local/opt/readline/lib/libreadline.6.dylib: stat() failed with errno=20
Abort trap: 6

Entonces parece que estoy llegando a algún lado , pero todavía tengo un problema. Si alguien puede arrojar algo de luz sobre una solución, estaría eternamente agradecido.

skwidbreth
fuente

Respuestas:

12

Pude resolver esto simplemente ejecutando brew switch readline 6.3.8

skwidbreth
fuente
1
Hmm, readline ya está en v8.0.0
jersey bean
Funciona para mí ... ligeramente alterado: Error: readline no tiene una versión "6.3.8" en la bodega. versiones instaladas de readline: 6.2.4, 7.0.5, 8.0.1 switch interruptor de preparación readline 6.2.4
dr. RAI
6

Correr brew upgrade gawk funcionó para mí, como lo sugirió @wisbucky

Y eso solucionó el siguiente error, al abrir una nueva terminal:

dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib
  Referenced from: /usr/local/bin/awk

Detalles del sistema operativo: macOS Mojave versión 10.14.1 (18B75)

RafiAlhamd
fuente
3

mi problema se debió a que mi awk estaba vinculado a gawk

brew unlink gawk

Scott
fuente
2
Si bien eso funciona, eliminará los enlaces simbólicos a gawk, lo que significa que gawkya no funcionará. Para mantenerlo gawk, actualícelo con brew upgrade gawk. Eso también actualizará la readlineversión ya que es una dependencia. O si no quieres gawk, entonces brew uninstall gawk.
wisbucky
1

Agregar un enlace simbólico

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