2015-02-06 13 views
12

Ho recentemente provato ad aggiornare la mia applicazione rail 3.2 * alle guide 4.2. *. Ma, sono stato fermato durante l'installazione della gemma 'pg'. Quando ho cercato su Google, le soluzioni che sono per lo più legate solo a OSX. Ma sto usando Ubuntu 14.04. Hai bisogno di qualche suggerimento per il problema qui sotto.rails 4.2.0: impossibile installare pg gem su ubuntu 14.04

Ho installato la versione postgresql 9.3.5 sulla mia macchina.

Gem::Ext::BuildError: ERROR: Failed to build gem native extension. 

    /usr/local/rvm/rubies/ruby-2.1.2/bin/ruby extconf.rb 
checking for pg_config... yes 
Using config values from /usr/bin/pg_config 
checking for libpq-fe.h... no 
Can't find the 'libpq-fe.h header 
*** extconf.rb failed *** 
Could not create Makefile due to some reason, probably lack of necessary 
libraries and/or headers. Check the mkmf.log file for more details. You may 
need configuration options. 

Provided configuration options: 
    --with-opt-dir 
    --without-opt-dir 
    --with-opt-include 
    --without-opt-include=${opt-dir}/include 
    --with-opt-lib 
    --without-opt-lib=${opt-dir}/lib 
    --with-make-prog 
    --without-make-prog 
    --srcdir=. 
    --curdir 
    --ruby=/usr/local/rvm/rubies/ruby-2.1.2/bin/ruby 
    --with-pg 
    --without-pg 
    --enable-windows-cross 
    --disable-windows-cross 
    --with-pg-config 
    --without-pg-config 
    --with-pg_config 
    --without-pg_config 
    --with-pg-dir 
    --without-pg-dir 
    --with-pg-include 
    --without-pg-include=${pg-dir}/include 
    --with-pg-lib 
    --without-pg-lib=${pg-dir}/lib 

extconf failed, exit code 1 

Gem files will remain installed in /usr/local/rvm/gems/[email protected]/gems/pg-0.18.1 for inspection. 
Results logged to /usr/local/rvm/gems/[email protected]/extensions/x86_64-linux/2.1.0/pg-0.18.1/gem_make.out 
An error occurred while installing pg (0.18.1), and Bundler cannot continue. 
Make sure that `gem install pg -v '0.18.1'` succeeds before bundling. 
+0

@ mr-nero si prega di consultare la mia risposta e accettarla come la risposta corretta –

risposta

31

È necessario installare il pacchetto PostgreSQL dev con l'intestazione di PostgreSQL

sudo apt-get install libpq-dev 

Si può anche provare

sudo apt-get install postgresql-client 
sudo apt-get install postgresql postgresql-contrib 
+1

Ho già installato questi pacchetti di dipendenze. Ma, ancora una volta ho fallito. –

+1

Hai guardato su http://stackoverflow.com/questions/3116015/how-to-install-gem-pg-on-ubuntu –

+0

sudo apt-get install postgresql postgresql-contrib, questo potrebbe funzionare per te –

10

imbattuto in questo problema esatto cercando di gem install pg -v 0.18.1 con PostgreSQL 9.4 su Ubuntu 14.04

sudo apt-get install libpq-dev build-essential postgresql-server-dev-9.4 

Fondamentalmente mi mancava postgresql-server-dev-${version}

Nel tuo caso provare

sudo apt-get install libpq-dev build-essential postgresql-server-dev-9.3 
+3

Grazie! Btw, sudo apt-get install libpq-dev è stato abbastanza per me. – mondayguy

+0

Sono stato a lottare per diversi giorni e nulla è stato di aiuto fino a quando non è stato installato il pacchetto 'build-essential' (per' gem pg 0.21') .. Non l'ho visto da nessun'altra parte, quindi grazie! – kevlarr

+1

Anche se ho appena provato con 'apt-get install libpq-dev gcc make' piuttosto che il pieno' build-essential' e anche quello ha funzionato – kevlarr

0

Seguire questo comando su Ubuntu 16,04

sudo apt install libpq-dev postgresql-server 
sudo -u postgres createuser -s $(whoami); createdb $(whoami) 
gem install pg