Installazione di PG gem su OS X: imansible creare un’estensione nativa

Sembra che molti altri abbiano avuto problemi nell’installare la gem pg. Nessuna delle soluzioni poste per gli altri ha funzionato per me.

Ho provato ad installare il pg gem e postgres.app. La gem pg non verrà installata. Il primo errore che ottengo è:

Si è verificato un errore durante l’installazione di pg (0.17.0) e Bundler non può continuare. Assicurati che gem install pg -v '0.17.0' prima del raggruppamento.

I consigli di installazione su come puntare la mia gem installazione alla config per pg falliscono con il seguente messaggio di errore (che molti altri su questo forum hanno riscontrato):

 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 

Non so come trovare o accedere a questo file di registro per cercare ulteriori indizi.

Ricevo anche un messaggio di errore (comando non trovato) quando provo a usare il comando sudo apt-get install. Ho setacciato questo forum per le ultime 6 ore, provando ogni consiglio per far funzionare pg con il mio progetto di rotaie.

Non riesco a trovare consigli su come modificare un percorso o, in particolare, quale cambiamento è richiesto. Il mio which pg_config restituisce una fonte di file. L’ho usato con un comando per installare pg usando quella configurazione. Fallisce

Ci sono così tante persone che hanno avuto problemi con questo. Molte risposte suggeriscono l’homebrew. Ho dovuto rimuoverlo perché ha sollevato altri problemi.

Lo stesso errore per me e non l’ho provato fino a quando non ho scaricato OS X 10.9 (Mavericks). Sigh, un altro mal di testa per l’aggiornamento del sistema operativo.

Ecco come l’ho risolto (con homebrew):

  • Installa un’altra build di Xcode Tools (digitando brew update nel terminale ti verrà chiesto di aggiornare gli strumenti di sviluppo di Xcode)
  • brew update
  • brew install postgresql

Dopo quell’installazione gem install pg funzionato per me.

Se stai usando Ubuntu prova ad installare il seguente file lib

 sudo apt-get install libpq-dev 

e poi

gem install pg

ha funzionato per me

Sto usando OS X Mavericks (versione 10.9)

e quando eseguo quanto sopra ho ricevuto il seguente messaggio: Se le build di PostgreSQL 9 stanno fallendo e hai installato la versione 8.x.

Quindi eseguo il seguente comando:

 ARCHFLAGS="-arch x86_64" gem install pg 

e questo ha funzionato per me, spero che questo aiuti qualcuno 🙂

Ok ho anche avuto questo problema (psql è v 9.3.0 e ruby ​​è v 2.1.2) e la soluzione che ha funzionato per me è stata la prima impostazione delle impostazioni di configurazione del bundle:

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

Questa risposta alla fine mi ha aiutato a capirlo: https://stackoverflow.com/a/9235107/3546680

Ho provato tutto per ore, ma alla fine l’ho risolto (sono su OS X 10.9.4):

  1. Installa strumenti da riga di comando Xcode (sito Apple Developer)
  2. brew uninstall postgresql
  3. brew install postgresql
  4. ARCHFLAGS = “- arch x86_64” gem install pg

Allo stesso modo, dopo l’installazione bundle update Mavericks bundle update stato generato un errore sul gem di pg, che viene utilizzato solo in produzione e non localmente.

Uso Brew per gestire i miei pacchetti e postgresql era già installato, ma ricevevo comunque l’errore ‘no pg_config’.

La soluzione era semplicemente brew uninstall postgresql , quindi brew install postgresql . Dopo di che sono stato immediatamente in grado di eseguire correttamente l’ bundle update .

passo facile

  1. brew install postgresql
  2. gem install pg -v 'your version'

Credo che la risposta “corretta” sarebbe quella di configurare PATH in modo corretto per Postgres.app aggiungendo quanto segue a ~/.profile ( .zshrc o ~/.zprofile se si utilizza ZSH):

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

Quindi apri una nuova scheda o finestra nel terminale e installa la gem pg con:

 ARCHFLAGS="-arch x86_64" gem install pg 

Documentato qui:

Su OSX con Postgres installato in / Applicazioni, eseguo semplicemente il comando seguente (modifica 0.20 e 9.4 in base alla tua versione)

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

Avresti dovuto :

Creazione di estensioni native con: ‘–with-pg-config = / Applicazioni / Postgres.app / Contents / Versions / 9.4 / bin / pg_config’ Questo potrebbe richiedere del tempo … Installato con successo pg-0.20.

Ho passato un giorno su questo ed ecco come ho risolto il problema:

Ho trovato che il valore globale di build.pg è stato impostato su: /opt/local/lib/postgresql91/bin/pg_config e che non era il luogo in cui è stato installato /opt/local/lib/postgresql91/bin/pg_config .

L’ho risolto sostituendo il valore di build.pg a: bundle config build.pg --with-pg-config=/usr/local/Cellar/postgresql/9.4.4/bin/pg_config che è dove si trova l’installazione di postgresql.

Provare:

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

Risolto! Ho trovato la mancanza di libreria per postgresql sul sistema. Solo due passaggi lo hanno risolto:

1) brew install postgresql 2) gem install pg