3

我一直(未成功)尝试在我的 ruby​​ 1.9.3-p286 上安装“pg”gem,但似乎没有任何效果。

我已经安装了 postgresql (9.1)、libpq-dev 和一些其他的,比如 postgresql-server-dev-9.1。我试图将“with-pg-config”标志传递给 gem 安装,但似乎没有任何效果。

每次我尝试安装 gem 时,它都会输出如下内容:

Building native extensions.  This could take a while...
ERROR:  Error installing pg:
    ERROR: Failed to build gem native extension.

        /home/lynux/.rvm/rubies/ruby-1.9.3-p286/bin/ruby extconf.rb
checking for pg_config... yes
Using config values from /usr/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
    --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=/home/lynux/.rvm/rubies/ruby-1.9.3-p286/bin/ruby
    --with-pg
    --without-pg
    --with-pg-dir
    --without-pg-dir
    --with-pg-include
    --without-pg-include=${pg-dir}/include
    --with-pg-lib
    --without-pg-lib=${pg-dir}/lib
    --with-pg-config
    --without-pg-config
    --with-pg_config
    --without-pg_config
    --with-pqlib
    --without-pqlib
    --with-libpqlib
    --without-libpqlib
    --with-ms/libpqlib
    --without-ms/libpqlib


Gem files will remain installed in /home/lynux/.rvm/gems/ruby-1.9.3-p286@phisiodata/gems/pg-0.14.1 for inspection.
Results logged to /home/lynux/.rvm/gems/ruby-1.9.3-p286@phisiodata/gems/pg-0.14.1/ext/gem_make.out

我究竟做错了什么?在尝试安装 gem 之前我还应该做些什么吗?

先感谢您。

[编辑]

好的,所以 joelparkerhenderson 的回答让我认为路径和库可能有问题,然后继续深入挖掘......

我找到了这个很棒的帖子,它解决了!基本上问题在于RVM。所以,我的问题已经解决了,对于任何可能遭受同样问题的人,请点击链接!

4

1 回答 1

2

您的错误看起来像您丢失了libpq-dev

您要先在系统上安装 Postgres 吗?

尝试这个:

sudo apt-get install postgresql postgresql-client postgresql-server-dev-all libpq-dev

接下来,你能以 root 身份安装 pg gem 吗?

sudo su - root
gem install pg
于 2012-12-02T19:09:52.953 回答