Acabo de instalar posgresql con homebrew y cuando sigo escribiendo el comando
psql
Obtuve el siguiente error:
dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.6.2.dylib
Referenced from: /usr/local/bin/psql
Reason: image not found
[1] 69711 trace trap psql
¿Alguien tiene alguna idea de lo que está mal?
postgresql
psql
libreadline
hbejgel
fuente
fuente
Respuestas:
Estaba recibiendo exactamente el mismo error, pero las respuestas anteriores no funcionaron para mí. Tuve que reinstalar postgresql.
brew reinstall postgresql
fuente
pg_upgrade
El problema clave es que su postgresql estaba tratando de encontrar la versión
libreadline.6.2.dylib
pero sureadline
es7.0
, por lo que solo la lib de 7 está vinculada.No creo que actualizar postgresql sea una buena idea, no es fácil y puede causar muchos problemas, especialmente cuando ya tienes datos de la base de datos.
Lo que hago es cambiar la versión de
readline
. Cuando verifiquebrew info readline
, encontrará diferentes versiones, la mía es6.3.8
, así que cambio a esa versión ejecutando:Cambiará a 6.3.8 y creará el enlace:
En este caso, toda la biblioteca vinculada se convierte en la versión 6, y la línea de comando funciona:
Sin embargo, si tiene diferentes aplicaciones que utilizan la versión diferente de readline, creo que debería considerar la actualización.
Actualización: 02/06/2019
¿Qué pasa si la versión anterior no está instalada?
Homebrew
no proporciona una forma de instalar la fórmula de la versión anterior. Y desde v2.0.0, se ejecutarábrew cleanup
como comportamiento predeterminado cada 30 días. Por lo tanto, puede actualizarbrew
y eliminar accidentalmente la versión anterior.Estos son los pasos para instalar la versión anterior:
homebrew-core
directorio:Siguiendo esos pasos, puede reinstalar la versión anterior de la fórmula.
fuente
readline
instalada? ¿Qué otras desventajas hay para hacer esto?Si la situación es que tienes una versión superior de readline, di 7.0. Puedes hacerlo
fuente
brew uninstall --force gawk
y luegobrew install gawk
fue lo que me puso en funcionamiento. También podrías ser capaz debrew reinstall --force gawk
pg_top
la actualización de libreadline a 8.0 y rompí psql. Usé tu truco, excepto que lo hice un enlace simbólicoln -s libreadline.8.0.dylib libreadline.7.dylib
Si no tiene readline instalado, primero instálelo:
brew install readline
Para mí, recibí este error, a pesar de que tenía readline instalado. Reinstalar readline hizo el truco:
fuente
bash
sí lo hizo:brew install --build-from-source bash
brew reinstall readline
(para obtener la infusión específica de Sierra) y, mientras lo hacíabrew reinstall postgresql94
,. La gente decía que reinstalara bash, pero para empezar nunca tuve que hacerlo. Así que esta respuesta y la respuesta elegida funcionaron para mí.Esto funciono para mi
Esto mostrará las versiones que ha instalado. Elige uno de ellos. Elegí 7.0.5
Entonces corrí
La versión de readline se actualizó y
psql
funcionó sin problemas.fuente
libreadline.7.dylib
, pero estaba usando readline 8.0.0. Cambiar de 8.0.0 a 7.0.5 resolvió el problema. Supongo que crear un enlace simbólico (como lo han hecho otros) también funcionaría si quisiera permanecer en 8.0.0. Pero tener un enlace de versión más nueva a una versión anterior es engañoso y podría causar otros problemas.esto funcionó para mí
fuente
dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.6.2.dylib
, así que lo uséln -s /usr/local/opt/readline/lib/libreadline.7.0.dylib /usr/local/opt/readline/lib/libreadline.6.2.dylib
.La solución es forzar el enlace de readline nuevamente.
fuente
Me parece que el problema se trata de actualizar el paquete readline. Postgres intentó usar /usr/local/opt/readline/lib/libreadline.7.dylib en mi caso. Así que acabo de crear un enlace simbólico a la versión existente de la biblioteca /usr/local/opt/readline/lib/libreadline.8.dylib.
trabajó para mi:
fuente
Ninguna de esas soluciones funcionó para mí; Tuve que correr:
de: https://github.com/Homebrew/homebrew-core/issues/5799
fuente
La respuesta anterior no funcionó para mí, así que quería publicar lo que finalmente funcionó. Basado en un hilo que encontré aquí , tuve que desinstalar readline y volver a instalarlo, pero desde la fuente.
Después de eso, el error psql desapareció.
fuente
Tuve este problema, y la clave para mí fue
reinstall
ambasreadline
ypostgres
. Una vez que se reinstaló Postgres, se resolvió el problema.fuente
Otra forma de arreglar psql es actualizar postgresql ya que se está ejecutando
brew upgrade postgresql
ya que la versión más nueva usará la versión readline 7.fuente
Tuve este problema cuando actualicé readline a la versión 7 por accidente. Desinstalé readline y brew me recuerda que 6.3.8 todavía está instalado. Parece que la versión 7 no funciona con PSQL en este momento.
fuente
Probé todos estos comandos de terminal y nada funcionó, así que decidí arreglarlo manualmente.
Abre el buscador y presiona comando + shift + g
deberías ver múltiples versiones de estos archivos
cambiar el nombre de cualquiera de ellos a la biblioteca que no esté cargada
fuente
Intenté todas las respuestas de vista previa, y nada funcionó. Lo único que realmente funcionó para mí fue:
brew link postgresql
fuente
Esto me ayudó: desinstalar todo readline y postgresql
export CPPFLAGS = -I / usr / local / opt / readline / include export LDFLAGS = -L / usr / local / opt / readline / lib
e instalar posqtgresql
fuente
Los siguientes comandos me funcionaron:
fuente
Encontré esta solución útil
https://github.com/Homebrew/homebrew-core/issues/5799
fuente
Podrías intentar
brew doctor
ver qué dice.Posiblemente todo lo que necesitas es
brew link --overwrite bash
.Para mí, acabo de actualizar brew ya que OS X EL Capitan tenía alguna actualización de seguridad que afecta a mi
/usr
carpeta. Durante la actualización de brew, el enlace bash está roto, y esto es lo quebrew doctor
me dice.Así que solo corro
brew link --overwrite bash
y todo está bien.fuente
Es posible que desee comprobar si tiene algo más vinculado a
postgresql
. Anteriormente me había vinculado al paquete postgres93 , que, a partir de mayo '17, no es compatible y se ha eliminado. Eliminar ese enlace y luego volver a vincular funcionó para mí:fuente
En mi caso, la respuesta correcta no solucionó el problema.
El problema comenzó después de ejecutar
brew doctor
y agregarexport PATH="/usr/local/bin:$PATH"
a mi archivo ~ / .zshrc.Quitando
de lo
~/.zshrc
tengo resuelto.fuente
Por alguna razón desconocida, cuando apareció este error para la próxima versión de Readline, mi RVM parecía incapaz de localizar el correcto sin importar cómo lo vinculé, arrojando:
Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib (LoadError)
Terminé agregando la gema
rb-readline
a mi Gemfile y haciendo otrabundle install
y comenzó a funcionar.Yo ... simplemente no lo sé.
fuente