gem 安装 pg 无法在 Mac El Capitan 上运行

gem install pg not working on Mac El Capitan

我尝试在 Mac El Capitan 上安装 pg Gem,但我总是收到此错误:

    Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

        /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb --with-pg-config=/Users/ricardolopes/Developer/homebrew/bin/pg_config
    Using config values from /Users/ricardolopes/Developer/homebrew/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
        --enable-windows-cross
        --disable-windows-cross
        --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/ricardolopes/Code/site-noticias/vendor/bundle/ruby/2.0.0/gems/pg-0.18.3 for inspection.
    Results logged to /Users/ricardolopes/Code/site-noticias/vendor/bundle/ruby/2.0.0/gems/pg-0.18.3/ext/gem_make.out
    An error occurred while installing pg (0.18.3), and Bundler cannot continue.
    Make sure that gem install pg -v '0.18.3' succeeds before bundling.

我也试过:

ARCHFLAGS="-arch x86_64" gem install pg

当我尝试时,我得到了:

    Building native extensions.  This could take a while...
    Successfully installed pg-0.18.3
    invalid options: -f fivefish
    (invalid options are ignored)
    Parsing documentation for pg-0.18.3
    Done installing documentation for pg after 3 seconds
    1 gem installed

但是我 运行 bundle install 并在 post 的开头遇到了同样的错误 post。

我尝试从 brew 重新安装 PostgresSQL。

对于基本的 Rails 应用程序,您可能已经安装了 SQLite,但在您的 Gemfile 中,它可能只是:

gem 'sqlite3'

您只需要 PostgreSQL 用于生产吗?确保您的 Gemfile 具有如下内容:

group :production do gem 'pg' end

此外,请确保您的 Gemfile 具有仅用于开发的 SQLite:

group :development do gem 'sqlite3' end

然后尝试 运行 bundle install.

试试这个:

  • 酿造更新
  • brew 安装 postgresql
  • sudo gem 安装 pg -v 'VERSION'

这对我有用:
sudo gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.4/bin/pg_config

如果 9.4 与 9.4 不同,请记住将 9.4 更改为您的 postgres 版本。