PostgreSQL的pg gem不会安装在OS X上

时间:2012-09-28 22:09:54

标签: ruby-on-rails ruby postgresql gem

我已经在互联网上看了所有的解决方案,重新安装了一切,但仍然没有...当我做宝石安装时,我得到:

  

构建原生扩展。这可能需要一段时间......   错误:安装pg时出错:     错误:无法构建gem原生扩展。

  /Users/henriquedubugras/.rvm/rubies/ruby-1.9.3-p194/bin/ruby extconf.rb --with-pgsql->lib=/usr/local/Cellar/postgresql/9.2.1/lib --with-pg->config=/usr/local/Cellar/postgresql/9.2.1/bin/pg_config
     

使用/usr/local/Cellar/postgresql/9.2.1/bin/pg_config中的配置值   检查libpq-fe.h ... * extconf.rb失败*   由于某些原因,可能无法创建Makefile   必要的库和/或标题。检查mkmf.log文件以获取更多信息   细节。您可能需要配置选项。

     

提供配置选项:       --with-OPT-DIR       --with-OPT-包括       --without-OPT-包括= $ {停用DIR} /包括       --with-OPT-LIB       --without-OPT-LIB = $ {选择-DIR} / lib目录       --with-MAKE-PROG       --without-MAKE-PROG       --srcdir =。       --curdir       --ruby = /用户/ henriquedubugras / .rvm /红宝石/红宝石1.9.3-P194 /斌/红宝石       --with-PG       --without-PG       --with-PG-DIR       --without-PG-DIR       --with-PG-包括       --without-PG-包括= $ {PG-DIR} /包括       --with-PG-LIB       --without-PG-LIB = $ {PG-DIR} / lib中       --with-PG-配置   /Users/henriquedubugras/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:381:in try_do': The compiler failed to generate an executable file. (RuntimeError) You have to install development tools first. from /Users/henriquedubugras/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:506:in try_cpp'       来自/Users/henriquedubugras/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:970:in block in find_header' from /Users/henriquedubugras/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:790:in阻止在checking_for'       来自/Users/henriquedubugras/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:284:in block (2 levels) in postpone' from /Users/henriquedubugras/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:254:in open'       来自/Users/henriquedubugras/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:284:in block in postpone' from /Users/henriquedubugras/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:254:in open'       来自/Users/henriquedubugras/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:280:in postpone' from /Users/henriquedubugras/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:789:in checking_for'       来自/Users/henriquedubugras/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:969:in find_header' from extconf.rb:41:in'

     

Gem文件将保留在/Users/henriquedubugras/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/gems/1.9.1/gems/pg-0.14.1中进行检查。   结果记录到/Users/henriquedubugras/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/gems/1.9.1/gems/pg-0.14.1/ext/gem_make.out

我尝试设置pg_config路径,安装了我的xcode,安装了xcode的命令行工具,我的ruby版本是由RVM安装的1.9.3。

我的mac是OS X Mountain Lion

谢谢你们!

2 个答案:

答案 0 :(得分:1)

您缺少Postgres客户端库头文件(libpq-fe.h)。在Debian中,包名为libpq-dev。我根本不了解Mac包装,但是如果没有Mac存储库构建PG源客户端库可以工作。

答案 1 :(得分:-1)

我建议安装rvm https://rvm.io/rvm/install 然后运行rvm要求。这将安装所有必需的软件包,你可能会错过" gcc49"在这之后安装rails和yore很好安装postgres。我会建议postgresapp或postgresql。