Forum: Ruby Fail to install postgres gem

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
2f24c382600d9fd71085a74251fd5a39?d=identicon&s=25 Damian Terentyev (Guest)
on 2007-02-03 15:56
(Received via mailing list)
Good day!
I have problems installing postgres gem.
It seems that gem cannot find my PostgreSQL installation.
Please tell me what options can I give to gem. Gem manual doesn't help.

I'm getting the following:

ERROR:  While executing gem ... (Gem::Installer::ExtensionBuildError)
     ERROR: Failed to build gem native extension.

ruby extconf.rb install postgres
checking for cygwin32_socket() in -lwsock32... no
checking for socket() in -lsocket... no
checking for gethostbyname() in -linet... no
checking for gethostbyname() in -lnsl... no
checking for sys/un.h... yes
checking for socket()... yes
checking for hsterror()... no
checking for gethostname()... yes
checking for PQsetdbLogin() in -lpq... no
*** 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/bin/ruby
         --with-pgsql-dir
         --without-pgsql-dir
         --with-pgsql-include
         --without-pgsql-include=${pgsql-dir}/include
         --with-pgsql-lib
         --without-pgsql-lib=${pgsql-dir}/lib
         --with-wsock32lib
         --without-wsock32lib
         --with-socketlib
         --without-socketlib
         --with-inetlib
         --without-inetlib
         --with-nsllib
         --without-nsllib
         --with-pgsql-include-dir
         --without-pgsql-include-dir
         --with-pgsql-lib-dir
         --without-pgsql-lib-dir
         --with-pqlib
         --without-pqlib
Could not find PostgreSQL libraries: Makefile not created


Gem files will remain installed in
/usr/local/lib/ruby/gems/1.8/gems/postgres-0.7.1 for inspection.
Results logged to
/usr/local/lib/ruby/gems/1.8/gems/postgres-0.7.1/gem_make.out

Yours sincerely,
Damian/Three-eyed Fish
732bd1e6a3d9f631fcab2faa73343115?d=identicon&s=25 Vladimir Konrad (prhlava)
on 2007-02-03 17:57
i usually install this from source (not as a gem) - this way i can
specify where the postgresql header files and libraries live (i usually
also build the postgresql from source).

just download the source from http://ruby.scripting.ca/postgres/ and
follow the instructions in README file.

hope this helps,

vlad
560c83ff6b6600e39315a1cf75b7c229?d=identicon&s=25 Tom Copeland (Guest)
on 2007-02-03 18:01
(Received via mailing list)
On Sat, 2007-02-03 at 23:55 +0900, Damian Terentyev wrote:
> Gem files will remain installed in
> /usr/local/lib/ruby/gems/1.8/gems/postgres-0.7.1 for inspection.

Hm, seems like it's not finding the PostgreSQL header and object files.
You can probably get it to work by moving into that directory
(/usr/local/lib/ruby/gems/1.8/gems/postgres-0.7.1) and running:

ruby extconf.rb --with-pgsql-include-dir=/path/to/pgsql/headers
--with-pgsql-lib-dir=/path/to/pgsql/shared_libs

and then run "make" and "make install".

Yours,

Tom
2f24c382600d9fd71085a74251fd5a39?d=identicon&s=25 Damian Terentyev (Guest)
on 2007-02-03 18:44
(Received via mailing list)
On Feb 3, 2007, at 20:00, Tom Copeland wrote:

>
> and then run "make" and "make install".
>
> Yours,
>
> Tom

Thank you so much!
Worked.

Yours sincerely,
Damian/Three-eyed Fish
C515daf003a781a638d8a01e41a935a0?d=identicon&s=25 George Ogata (Guest)
on 2007-02-03 18:58
(Received via mailing list)
On 2/4/07, Tom Copeland <tom@infoether.com> wrote:
>
> and then run "make" and "make install".

You can also achieve the same thing in one step with gem by passing
the extconf args after '--':

  gem install postgres -- --with-pgsql-include-dir=...
560c83ff6b6600e39315a1cf75b7c229?d=identicon&s=25 Tom Copeland (Guest)
on 2007-02-04 03:38
(Received via mailing list)
On Sun, 2007-02-04 at 02:43 +0900, Damian Terentyev wrote:
> >
> > Tom
>
> Thank you so much!
> Worked.

Super!  The same thing happened to me with the MySQL gem yesterday, so
it's fresh in my mind...

Yours,

tom
This topic is locked and can not be replied to.