在ruby项目构建期间,尝试安装pg gem失败

时间:2014-03-27 14:32:57

标签: ruby postgresql rvm pg

我试图构建一个使用本地运行的postgres的ruby项目。 pg gem install上的构建失败。我收到此错误

$ gem install pg -v '0.12.2'
Building native extensions.  This could take a while...
ERROR:  Error installing pg:
    ERROR: Failed to build gem native extension.

    /path/to/.rvm/rubies/ruby-1.9.3-p545/bin/ruby extconf.rb
checking for pg_config... no
No pg_config... trying anyway. If building fails, please try again with
    --with-pg-config=/path/to/pg_config

所以......我传递了pg_config路径,并得到了一个不同的错误:

$ gem install pg --with-pg-config=/usr/pgsql-9.2/bin/pg_config -v '0.12.2'
ERROR:  While executing gem ... (OptionParser::InvalidOption)
    invalid option: --with-pg-config=/usr/pgsql-9.2/bin/pg_config

很困惑。

1 个答案:

答案 0 :(得分:7)

确保已安装 libpq-dev 包。如果您不这样做,请安装它并尝试在没有 - with-pg-config 参数的情况下再次安装pg。

关于 - with-pg-config 参数:

将参数传递给您正在安装的gem时,必须在选项的两个破折号前使用两个破折号,如下所示:

gem install gem-name -- --gem-option

因此,为了使用 - with-pg-config 选项安装 pg ,您想要运行的是:

gem install pg -v '0.12.2' -- --with-pg-config=/usr/pgsql-9.2/bin/pg_config

修改

另外,最后一个提示,在仔细搜索了这个问题之后,我发现你的ruby版本和架构可能会影响pg的安装,我引用了this link

  

我对卸载所有东西犹豫不决,所以我只是卸载了Ruby并重新安装了选项设置为64位(平台:" x86_64-darwin12.2.0")。使用此选项重新安装Ruby后,PG gem安装顺利,我恢复了快乐。