skrippyfingaz
skrippyfingaz

Reputation: 323

Bundle errors when installing postgres gem

I am trying to install gem pg but keep getting an error returned in my terminal. I have pg installed, i installed it with brew. I ran gem install pg and it just tell me that pg is already installed.

Here is the error I get.

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

    /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb 
checking for pg_config... yes
Using config values from /usr/local/bin/pg_config
checking for libpq-fe.h... yes
checking for libpq/libpq-fs.h... yes
checking for pg_config_manual.h... yes
checking for PQconnectdb() in -lpq... no
checking for PQconnectdb() in -llibpq... no
checking for PQconnectdb() in -lms/libpq... no
Can't find the PostgreSQL client library (libpq)
*** 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=/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/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}/
    --with-pqlib
    --without-pqlib
    --with-libpqlib
    --without-libpqlib
    --with-ms/libpqlib
    --without-ms/libpqlib


Gem files will remain installed in /var/folders/l7/f3_r_hhs46lfprth_1pw57vw0000gn/T/bundler20150320-66140-15yne3b/pg-0.18.1/gems/pg-0.18.1 for inspection.
Results logged to /var/folders/l7/f3_r_hhs46lfprth_1pw57vw0000gn/T/bundler20150320-66140-15yne3b/pg-0.18.1/gems/pg-0.18.1/ext/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.

Upvotes: 0

Views: 283

Answers (3)

Seemab
Seemab

Reputation: 11

Here's my fix on ubuntu 20.04:

sudo apt install libpq-dev -y

followed by:

gem install pg -v '0.21.0' --source 'https://rubygems.org/'

Upvotes: 0

Sonalkumar sute
Sonalkumar sute

Reputation: 2575

To tell system to use the gem you have installed on machine

Try

brew install postgresql 

or try

ARCHFLAGS="-arch x86_64" bundle install

Upvotes: 1

Paweł Dawczak
Paweł Dawczak

Reputation: 9649

I think I had similar problem on MacOS. Once you installed PostgreSQL viw brew, you need to install pg gem like:

gem install pg -- --with-pg-config=/usr/local/bin/pg_config

Check details here. This worked for my MacOS machine.

Good luck!

Upvotes: 0

Related Questions