Frage

Ich arbeite an einer Rails-App.
Postgresql mit postgresql-9.1.2-1-osx.dmg installiert
Installierte pg gem.
Dann, als ich hingerichtet habe rake db:createerhalte die folgende Fehlermeldung:

DLOPEN (/Users/sathishvc/.rvm/gesems/ruby-1.9.3-head@knome-vivacience/Gems/pg-0.12.2/lib/pg_ext.bundle, 9):Bibliothek nicht geladen:/usr/local/lib/libpq.5.4.dylib

Überprüft, ob /usr/local/lib/libpq.5.4.dylib existiert oder nicht.Es tut nicht.
Es sollte also irgendwo anders im System vorhanden sein, sonst weiß ich nicht, ob ich dafür noch eine andere Software installieren muss.

Ratt mir bitte jemand?

War es hilfreich?

Lösung 3

Einige Zeit nachdem ich diese Frage gestellt hatte, fand ich das heraus libpq.5.4.dylib wohnt in /Library/PostgreSQL/9.1/lib/.
Daher habe ich folgenden Link erstellt:
lrwxr-xr-x 1 sathishvc admin 43 Jan 28 23:40 /usr/local/lib/libpq.5.4.dylib -> /Library/PostgreSQL/9.1/lib/libpq.5.4.dylib.

Damit war das Problem dann gelöst.

Andere Tipps

Wenn Sie PostgreSQL mit Homebrew aktualisiert haben (Brew Update && Brew Upgrade), dann deinstallieren Sie einfach das pg-Gem:

gem uninstall pg
bundle install

und der Weg wird für dich korrigiert.Es ist nicht erforderlich, den gesamten PostgreSQL-Cluster zu deinstallieren.

Dieses Problem trat auf, nachdem ich zur PostgresApp gewechselt und die vorhandene PostgreSQL-Version über entfernt hatte

brew remove postgres

Letztendlich habe ich das Problem gelöst, indem ich PostgreSQL über neu installiert habe

brew install postgres

Ich konnte die Verwendung der PostgresApp beibehalten, indem ich Folgendes zu meinem .bash_profile hinzufügte

export PATH="/Applications/Postgres.app/Contents/MacOS/bin:/usr/local/bin:$PATH"

Sie können auch versuchen, Folgendes auszuführen:

brew doctor

Dadurch wurde ich auf diesen und einige weitere Fehler aufmerksam gemacht.

Dieser Fehler beeinträchtigte auch meine Fähigkeit, das Gem „Paperclip“ zu verwenden, da er dazu führte, dass ImageMagick mit demselben Fehler fehlschlug.

(Mit OS X 10.8.2)

In meinem Fall hat die Deinstallation/Neuinstallation von gem nicht geholfen.Aber ich habe den PostgreSQL-Bibliothekspfad hinzugefügt $DYLD_LIBRARY_PATH Umgebungsvariable in meinem ~/.bash_profile:

export DYLD_LIBRARY_PATH=/Library/PostgreSQL/9.3/lib:$DYLD_LIBRARY_PATH

Wenn Sie auch MySQL installiert haben, kann diese Zeile so aussehen:

export DYLD_LIBRARY_PATH=/usr/local/mysql/lib:/Library/PostgreSQL/9.3/lib:$DYLD_LIBRARY_PATH

Achten Sie natürlich auf die Versionsnummer im PostgreSQL-Pfad, zum Zeitpunkt des Verfassens dieses Artikels ist sie 9.3.Ich verwende RVM, Ruby 2.0.0, pg gem 0.17.0, unter Mac OS X 10.6.

Versuchen brew prune und dann neu installieren

Dies ist keine direkte Antwort auf die Frage, kann aber häufig auftreten

Zwei weitere Fälle, die von Interesse sein könnten, wenn Sie PostgreSQL mit Homebrew aktualisiert haben:

  1. Sie haben in der Vergangenheit einige Gem-Versionen beschnitten
  2. Ihre Anwendung ist älter und kann keine aktuelle Version von pg verwenden (ich habe eine Rails-2-App, die mit pg 0.17 ausfällt und den Server fast zum Erliegen bringt:Das mkmr.log wächst exponentiell ... versuchen Sie es mit 200 GB!)

Möglicherweise stehen Ihnen zahlreiche Versionen von pg zur Verfügung, auf die Sie sich verlassen können

wenn du rennst

gem uninstall pg

Wenn Sie mehr als eine Version haben, werden Sie vom System gefragt, welche Version Sie löschen möchten.Aber diese Liste könnte für Sie nützlich sein!Als Alternative zu awenkhhs Antwort können Sie hier anhalten und Ihre Edelsteine ​​auf eine akzeptable Version zurücksetzen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top