2015-01-01 67 views
0

我目前使用postgress.app并试图为rails项目安装pg gem。但问题是我不断收到如下:pg宝石不会安装。使用Postgress.app

$ 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 

那么,什么是我该做的就是将pg创业板实际安装时使用Postgress.app

更新

  1. 红宝石版本:2.2.0
  2. Rails的版本:4.1.5
  3. 的MacOSX:10.10
  4. Postgress:Postrgess 9.3应用
  5. PG宝石版本:0.17.1

回答

0

这个命令并获得成功对我来说:

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

看看 “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它需要的东西在磁盘上。有时问题是它无法找到所需的标题。所以,你需要找到一个或另一个。

找到手动,然后告诉宝石,并应启动并运行。

一旦你安装了它,就像链接答案中提到的那样创建一个小shell脚本,将来的安装将会容易得多。

+0

按照这些说明仍然没有工作,我得到了同样的结果作为我的问题。更新的问题包括ruby,rails,mac和postgres版本 – TheWebs

+0

你知道Mac OS已经安装了PostgreSQL,对不对?它应该位于/Library/PostgreSQL/9.1/bin/pg_config。使用该版本是完全安全的。 –

+0

我前段时间实际上删除了该版本。所以它不再安装。唯一的一个是在应用程序...为Postgres.app – TheWebs