web-dev-qa-db-de.com

Installieren von PG Gem unter OS X - Fehler beim Erstellen der nativen Erweiterung

Es scheint, dass viele andere Probleme hatten, das pg-Juwel zu installieren. Keine der Lösungen, die für andere vorgeschlagen wurden, hat für mich funktioniert.

Ich habe versucht, die pg gem und postgres.app zu installieren. Das pg-Juwel wird nicht installiert. Der erste Fehler, den ich erhalte, ist:

Bei der Installation von pg (0.17.0) ist ein Fehler aufgetreten, und Bundler kann nicht fortfahren. Stelle sicher das gem install pg -v '0.17.0' ist erfolgreich, bevor gebündelt wird.

Der Installationshinweis zum Verweisen der gem-Installation auf die Konfiguration für pg schlägt mit der folgenden Fehlermeldung fehl (auf die viele andere in diesem Forum gestoßen sind):

Failed to build native extensions... Results logged to /Users/melanie/.rvm/gems/Ruby-1.9.3-p448/gems/pg-0.17.0/ext/gem_make.out

Ich weiß nicht, wie ich diese Protokolldatei finden oder darauf zugreifen soll, um nach weiteren Hinweisen zu suchen.

Ich erhalte auch eine Fehlermeldung (Befehl nicht gefunden), wenn ich versuche, den Sudo-Befehl apt-get install zu verwenden. Ich habe dieses Forum in den letzten 6 Stunden durchforstet und jeden Ratschlag ausprobiert, um pg mit meinem Rails Projekt zum Laufen zu bringen.

Ich kann keinen Rat finden, wie ein Pfad geändert werden kann oder welche Änderung erforderlich ist. Mein which pg_config gibt eine Dateiquelle zurück. Ich habe das mit einem Befehl verwendet, um pg mit dieser Konfiguration zu installieren. Es schlägt fehl.

Es gibt so viele Leute, die Probleme damit hatten. Viele Antworten sprechen für Homebrew. Ich musste das entfernen, weil es andere Probleme aufwirft.

173
Mel

Gleicher Fehler für mich und ich habe ihn erst erfahren, als ich OS X 10.9 (Mavericks) heruntergeladen habe. Seufz, ein weiteres OS-Upgrade bereitet Kopfzerbrechen.

So habe ich es behoben (mit Homebrew):

  • Installieren Sie einen anderen Build von Xcode Tools (geben Sie brew update im Terminal fordert Sie auf, die Xcode-Build-Tools zu aktualisieren)
  • brew update
  • brew install postgresql

Nachdem gem install pg hat für mich gearbeitet.

417
shicholas

Wenn Sie Ubuntu verwenden, versuchen Sie, die folgende lib-Datei zu installieren

Sudo apt-get install libpq-dev

und dann

gem install pg

arbeitete für mich.

218
sandesh kota

Ich verwende OS X Mavericks (Version 10.9)

und wenn ich das oben genannte ausführe, erhalte ich die folgende Meldung: Wenn Builds von PostgreSQL 9 fehlschlagen und Sie Version 8.x installiert haben.

Also führe ich den folgenden Befehl aus:

ARCHFLAGS="-Arch x86_64" gem install pg

und das hat bei mir geklappt, ich hoffe das hilft jemandem :)

49
Jon

Ok, ich hatte auch dieses Problem (psql ist v 9.3.0 und Ruby ist v 2.1.2)) und die Lösung, die für mich funktionierte, bestand darin, zuerst die Bundle-Konfigurationseinstellungen festzulegen:

bundle config build.pg -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.3/bin/pg_config

Diese Antwort hat mir schließlich geholfen, es herauszufinden: https://stackoverflow.com/a/9235107/354668

41
paninapress

Ich habe alles stundenlang ausprobiert, aber das folgende Problem wurde behoben (ich arbeite unter OS X 10.9.4):

  1. Installieren der Xcode-Befehlszeilentools (Apple Developer Site)
  2. brauen deinstallieren postgresql
  3. brauen installieren postgresql
  4. ARCHFLAGS = "- Arch x86_64" gem install pg
22
Ali Yazdani

einfacher schritt

  1. brew install postgresql
  2. gem install pg -v 'your version'
7
James Dela Cruz

In ähnlicher Weise verursachte Mavericks nach der Installation bundle update Einen Fehler auf dem pg-Edelstein, der nur in der Produktion und nicht lokal verwendet wird.

Ich verwalte meine Pakete mit Brew und postgresql wurde bereits installiert, aber es wurde immer noch die Fehlermeldung 'no pg_config' angezeigt.

Das Update war nur brew uninstall postgresql, Dann brew install postgresql. Danach konnte ich sofort erfolgreich bundle update Ausführen.

6
Shannon Perkins

Ich glaube, die "richtige" Antwort wäre, zuerst PATH richtig für Postgres.app zu konfigurieren, indem Sie Folgendes zu ~/.profile (.zshrc Oder ~/.zprofile Hinzufügen, wenn Sie ZSH verwenden):

export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/latest/bin

Dann öffne einen neuen Tab oder ein neues Fenster im Terminal und installiere den Edelstein pg mit:

ARCHFLAGS="-Arch x86_64" gem install pg

Hier dokumentiert:

5
Matias Korhonen

Unter OSX mit in/Applications installiertem Postgres führe ich einfach den folgenden Befehl aus (ändere .2 & 9.4 entsprechend deiner Version)

gem install pg -v '0.20' -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.4/bin/pg_config

Du solltest haben :

Erstellen nativer Erweiterungen mit: '--with-pg-config =/Applications/Postgres.app/Contents/Versions/9.4/bin/pg_config' Dies kann eine Weile dauern ... pg-0.20 erfolgreich installiert.

5
jbheren

Ich habe einen Tag damit verbracht und hier ist, wie ich es behoben habe:

Ich habe festgestellt, dass der globale Wert von build.pg wie folgt festgelegt wurde: /opt/local/lib/postgresql91/bin/pg_config und das war nicht wo postgres installiert wurde.

Ich habe das Problem behoben, indem ich den Wert von build.pg durch den folgenden ersetzt habe: bundle config build.pg --with-pg-config=/usr/local/Cellar/postgresql/9.4.4/bin/pg_config Hier befindet sich meine Postgresql-Installation.

3
HosseinToussi

Versuchen:

gem install pg -- --with-pg-config=`which pg_config`
1
Gerry