Impossible d’exécuter la commande psql, continuez à obtenir la même erreur

Je viens d’installer posgresql avec homebrew et quand je continue à taper la commande

psql 

Je reçois l’erreur suivante:

 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 

Est-ce que quelqu’un a une idée de ce qui ne va pas?

J’obtenais exactement la même erreur, mais les réponses ci-dessus ne fonctionnaient pas pour moi. J’ai dû réinstaller postgresql.

brew reinstall postgresql

Le problème principal est que votre postgresql essayait de trouver le libreadline.6.2.dylib mais votre readline est la version 7.0 , ainsi seulement la lib 7 est liée.

Je ne pense pas que la mise à niveau de postgresql soit une bonne idée, ce n’est pas facile et cela peut causer beaucoup de problèmes, surtout lorsque vous avez déjà des données de firebase database.

Ce que je fais, c’est de changer la version de readline . Lorsque vous vérifiez les brew info readline , vous trouverez différentes versions, la mienne est la 6.3.8 , je passe donc à cette version en exécutant:

 $ brew switch readline 6.3.8 

Il passera à 6.3.8 et créera le lien:

 Cleaning /usr/local/Cellar/readline/6.3.8 Cleaning /usr/local/Cellar/readline/7.0.1 Opt link created for /usr/local/Cellar/readline/6.3.8 

Dans ce cas, toutes les lib liées vont à la version 6, et la ligne de commande fonctionne:

 $ ls /usr/local/opt/readline/lib/ libhistory.6.2.dylib libhistory.dylib libreadline.a libhistory.6.3.dylib libreadline.6.2.dylib libreadline.dylib libhistory.6.dylib libreadline.6.3.dylib libhistory.a libreadline.6.dylib 

Cependant, si vous avez des applications différentes utilisant une version différente de readline, je pense que vous devriez envisager une mise à niveau.

Si vous avez une version supérieure, readline dit 7.0. Tu peux le faire

 cd /usr/local/opt/readline/lib ln libreadline.7.0.dylib libreadline.6.2.dylib 

Si readline n’est pas installé, installez-le d’abord:

brew install readline

Pour moi, je recevais cette erreur, même si j’avais readline installé. Réinstaller readline a fait l’affaire:

 brew reinstall readline 

La solution consiste à forcer la liaison de readline à nouveau.

 brew remove readline brew install readline brew link readline --force 

cela a fonctionné pour moi

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

Aucune de ces solutions n’a fonctionné pour moi; Je devais courir:

 brew upgrade bash 

à partir de: https://github.com/Homebrew/homebrew-core/issues/5799

La réponse ci-dessus n’a pas fonctionné pour moi donc je voulais afficher ce qui a finalement fonctionné. Basé sur un thread que j’ai trouvé ici , j’ai dû désinstaller readline et l’installer à nouveau, mais à partir de la source.

 brew uninstall readline brew install --build-from-source readline 

Après cela, l’erreur psql a disparu.

J’avais ce problème et la clé pour moi était de reinstall readline et postgres . Une fois que postgres a été réinstallé, le problème a été résolu.

J’ai essayé toutes ces commandes de terminal et rien n’a fonctionné, alors j’ai décidé de le réparer manuellement.

Ouvrez le Finder et appuyez sur Commande + Maj + G

 Go to this folder /usr/local/opt/readline/lib/ 

vous devriez voir plusieurs versions de ces fichiers

 libreadline.6.dylib libreadline.7.0.dylib 

renommer l’un d’entre eux dans la bibliothèque qui n’est pas chargée

 this is: /usr/local/opt/readline/lib/libreadline.6.2.dylib mine was: /usr/local/opt/readline/lib/libreadline.6.dylib 

Cela m’a aidé: désinstaller tous les readline et postgresql

export CPPFLAGS = -I / usr / local / opt / readline / include export LDFLAGS = -L / usr / local / opt / readline / lib

et installer posqtgresql

J’ai eu ce problème lorsque j’ai mis à jour readline à la version 7 par accident. J’ai désinstallé readline et brew me rappeler que 6.3.8 est toujours installé. Il semble que la version 7 ne fonctionne pas avec PSQL pour le moment.

Une autre façon de corriger psql est de mettre à jour postgresql en exécutant simplement la brew upgrade postgresql puisque la version la plus récente utilisera la version readline 7.

J’ai trouvé cette solution utile

 brew upgrade bash 

https://github.com/Homebrew/homebrew-core/issues/5799

J’ai essayé toutes les réponses en avant-première et rien n’a fonctionné. La seule chose qui a vraiment fonctionné pour moi était:

brew link postgresql

Vous pouvez essayer de brew doctor et voir ce qu’il dit.

Peut-être que tout ce dont vous avez besoin est un brew link --overwrite bash .

Pour moi, je viens de mettre à jour brew car OS X EL Capitan avait une mise à jour de sécurité qui assigne mon dossier /usr . Au cours de la mise à niveau du armsage, le lien bash est rompu, et c’est ce que me dit le brew doctor armseur.

Donc, je lance juste le brew link --overwrite bash et tout va bien.

Vous voudrez peut-être vérifier si vous avez un lien symbolique vers postgresql . Je m’étais déjà connecté au package postgres93 , qui, à partir de mai ’17, n’est plus pris en charge et a été supprimé. Retrait de ce lien, puis reliure a fonctionné pour moi:

 brew unlink postgresql93 brew link postgresql 

Dans mon cas, la réponse correcte n’a pas résolu le problème.

Le problème a commencé après l’exécution du logiciel Brew Doctor et en ajoutant export PATH="/usr/local/bin:$PATH" à mon fichier ~ / .zshrc.

Enlever

 export PATH="/usr/local/bin:$PATH" 

de ~/.zshrc été résolu.

Pour une raison inconnue, lorsque cette erreur est apparue pour la prochaine version de Readline, mon RVM semblait incapable de localiser la bonne, peu importe la façon dont je l’ai lié, en lançant:

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

J’ai fini par append la gem rb-readline à mon Gemfile et faire une autre bundle install et cela a commencé à fonctionner.

Je … ne sais pas.