【问题标题】:PostgreSQL's pg gem won't install on OS XPostgreSQL 的 pg gem 不会安装在 OS X 上
【发布时间】:2012-09-20 19:28:40
【问题描述】:

我已经查看了互联网上的所有解决方案,重新安装了所有内容,但仍然没有...当我执行 gem install pg 时,我得到:

构建原生扩展。这可能需要一段时间... 错误:安装 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-include --without-opt-include=${opt-dir}/include --with-opt-lib --without-opt-lib=${opt-dir}/lib --with-make-prog --没有-make-prog --srcdir=。 --curdir --ruby=/Users/henriquedubugras/.rvm/rubies/ruby-1.9.3-p194/bin/ruby --with-pg --没有-pg --with-pg-dir --没有-pg-dir --with-pg-include --without-pg-include=${pg-dir}/include --with-pg-lib --without-pg-lib=${pg-dir}/lib --with-pg-config /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:intry_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:inblock in checks_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:inopen' 来自 /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:inopen' 来自 /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:inchecking_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

谢谢大家!

【问题讨论】:

    标签: ruby-on-rails ruby postgresql gem


    【解决方案1】:

    我建议安装 rvm https://rvm.io/rvm/install 然后运行 ​​rvm 要求。这将安装所有必需的软件包,在安装 rails 之后您可能会丢失“gcc49”,并且以前安装 postgres 很好。我建议使用 postgresapp 或 postgresql。

    【讨论】:

      【解决方案2】:

      您缺少 Postgres 客户端库头文件 (libpq-fe.h)。在 Debian 中,该软件包称为 libpq-dev。我根本不知道 Mac 打包,但是如果没有 Mac 存储库,从源代码构建 PG 客户端库就可以了。

      【讨论】:

        猜你喜欢
        • 2013-03-14
        • 2011-03-08
        • 2014-01-01
        • 2017-01-31
        • 2012-01-22
        • 2013-10-16
        • 2013-11-03
        相关资源
        最近更新 更多