rails 4.2.0: can't install pg gem on ubuntu 14.04
Asked Answered
P

3

14

I have recently tried to upgrade my rail 3.2* application to rails 4.2.*. But, I was stopped while installing the 'pg' gem. When I googled it, the solutions which are mostly related to OSX only. But I'm using ubuntu 14.04. Need any suggestion for the below issue.

I have installed postgresql 9.3.5 version on my machine.

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/ruby-2.1.2@r4/gems/pg-0.18.1 for inspection.
Results logged to /usr/local/rvm/gems/ruby-2.1.2@r4/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.
Perdu answered 6/2, 2015 at 10:53 Comment(2)
@mr-black please review my answer and accept it as the correct answerAllergen
in Ubuntu 22.04 (Windows 10 WSL2), this answer worked for meGardenia
S
32

You need install the postgreSQL dev package with header of PostgreSQL

sudo apt-get install libpq-dev

You may also try

sudo apt-get install postgresql-client
sudo apt-get install postgresql postgresql-contrib
Strobile answered 6/2, 2015 at 11:3 Comment(5)
I have already installed those dependency packages. But, again I failed.Perdu
Did you look on that #3116515Strobile
sudo apt-get install postgresql postgresql-contrib ,this may work for youStrobile
Yes, I have already reviewed the given link and others too in SF. But it's not help to me in anyway.Perdu
First example worked great for me on one of our Ubuntu 14.04 servers, thanks.Fiora
A
12

Ran into this exact problem trying to gem install pg -v 0.18.1 with postgresql 9.4 on ubuntu 14.04

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

Basically I was missing postgresql-server-dev-${version}

In your case try

sudo apt-get install libpq-dev build-essential postgresql-server-dev-9.3
Allergen answered 3/3, 2015 at 16:54 Comment(3)
Thank you! Btw, sudo apt-get install libpq-dev was enough for me.Blancmange
I have been wrestling this for several days and nothing helped until the build-essential package was installed (for gem pg 0.21).. I didn't see that anywhere else, so thank you!Turmeric
Although just tried with apt-get install libpq-dev gcc make rather than the full build-essential and that worked as wellTurmeric
U
0

Follow this command on ubuntu 16.04

sudo apt install libpq-dev postgresql-server
sudo -u postgres createuser -s $(whoami); createdb $(whoami)
gem install pg
Unhair answered 26/1, 2018 at 4:56 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.