Mac readline - Bibliothek nicht geladen

15

Ich arbeite an einem Mac, Sierra 10.12.3, und versuche, über den psqlBefehl auf eine PostgreSQL-Datenbank zuzugreifen , aber der Fehler wurde ausgelöst

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

Vor ein oder zwei Tagen arbeitete ich mit jemandem zusammen und musste pip installieren, also rannte ich brew install pipund es war alles gut. Dies ist das erste Mal psqlseitdem, dass ich versuche zu laufen, und ich bin nicht sicher, ob dies irgendetwas mit meinem Problem zu tun hat, aber es scheint wahrscheinlich, da ich keine anderen Änderungen vorgenommen habe.

Jetzt habe ich ein wenig Detektivarbeit geleistet und festgestellt, dass /usr/local/opt/es tatsächlich ein readlineAlias-Verzeichnis gab, auf das verwiesen wurde /usr/local/Cellar/readline/7.0.1(Version 7.0.1 scheint auch irgendwann installiert worden zu sein - vielleicht als Teil von pip? Vielleicht habe ich es versehentlich getan ...) also machte es Sinn, dass der ursprüngliche Fehler ausgelöst wurde. Ich habe den Alias ​​so geändert, dass er auf zeigt, /usr/local/Cellar/readline/6.3.8und der Fehler hat sich geringfügig geändert:

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

Es scheint also, als würde ich irgendwohin kommen , aber immer noch ein Problem haben. Wenn jemand etwas Licht in eine Lösung bringen kann, wäre ich für immer dankbar.

skwidbreth
quelle

Antworten:

12

Ich konnte dies durch einfaches Ausführen beheben brew switch readline 6.3.8

skwidbreth
quelle
1
Hmm, Readline ist bereits auf v8.0.0
Jersey Bean
Funktioniert bei mir ... leicht verändert: Fehler: readline hat keine Version "6.3.8" im Keller. readline installierte versionen: 6.2.4, 7.0.5, 8.0.1 ➜ brauschalter readline 6.2.4
dr. RAI
6

Laufen brew upgrade gawk hat bei mir funktioniert, wie von @wisbucky vorgeschlagen

Damit wurde der folgende Fehler beim Öffnen eines neuen Terminals behoben:

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

Betriebssystemdetails: macOS Mojave Version 10.14.1 (18B75)

RafiAlhamd
quelle
3

Mein Problem war, dass mein awk mit gawk verbunden war

brew unlink gawk

Scott
quelle
2
Während das funktioniert, werden Sie die Symlinks zu entfernen gawk, was bedeutet, dass gawkes nicht mehr funktioniert. Um es zu behalten gawk, aktualisieren Sie es mit brew upgrade gawk. Dadurch wird auch die readlineVersion aktualisiert, da es sich um eine Abhängigkeit handelt. Oder wenn du nicht willst gawk, dann brew uninstall gawk.
wisbucky
1

Fügen Sie einen Symlink hinzu

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