pg gem 不会安装。使用 Postgress.app

pg gem wont install. Using Postgress.app

我目前正在使用 postgress.app 并尝试为 rails 项目安装 pg gem。但问题是我不断收到以下信息:

$ gem install pg -v '0.17.1' -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.3/bin/pg_config
Building native extensions with: '--with-pg-config=/Applications/Postgres.app/Contents/Versions/9.3/bin/pg_config'
This could take a while...
ERROR:  Error installing pg:
    ERROR: Failed to build gem native extension.

    /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.3/bin/pg_config
Using config values from /Applications/Postgres.app/Contents/Versions/9.3/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
    --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=/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby
    --with-pg
    --without-pg
    --with-pg-config
    --with-pg-dir
    --without-pg-dir
    --with-pg-include
    --without-pg-include=${pg-dir}/include
    --with-pg-lib
    --without-pg-lib=${pg-dir}/
    --with-pqlib
    --without-pqlib
    --with-libpqlib
    --without-libpqlib
    --with-ms/libpqlib
    --without-ms/libpqlib


Gem files will remain installed in /Users/Adam/.rvm/gems/ruby-2.1.5/gems/pg-0.17.1 for inspection.
Results logged to /Users/Adam/.rvm/gems/ruby-2.1.5/gems/pg-0.17.1/ext/gem_make.out

那么我应该怎么做才能在使用 Postgress.app 时实际安装 pg gem?

更新

  1. 红宝石版本:2.2.0
  2. Rails 版本:4.1.5
  3. MacOSX: 10.10
  4. Postgress:Postrgess 9.3 应用程序
  5. Pg gem版本:0.17.1

这个命令对我有用:

env ARCHFLAGS="-arch x86_64" gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/MacOS/bin/pg_config

看看“Failing installing pg gem, "mkmf.rb can't find header files for ruby" (Mac OSX 10.6.5)”。

通常安装 PostgreSQL 和 pg gem 时的问题是 gem 找不到 PostgreSQL 的 pg_config 工具,它可以告诉 gem 在哪里它需要的东西在磁盘上。有时问题是找不到所需的 headers。因此,您需要找到一个。

手动找到那个,然后告诉 gem,并且应该起来 运行。

安装完成后,创建一个小 shell 脚本,如链接答案中所述,以后的安装会容易得多。