ruby-on-rails 安装postgres gem时出现捆绑包错误

yhuiod9q  于 2023-01-22  发布在  Ruby
关注(0)|答案(3)|浏览(202)

我试图安装gem pg,但不断得到一个错误返回在我的终端。我有pg安装,我安装了brew。我运行gem安装pg,它只是告诉我pg已经安装。
这是我得到的错误。

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

    /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb 
checking for pg_config... yes
Using config values from /usr/local/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
    --without-pg-config
    --with-pg_config
    --without-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 /var/folders/l7/f3_r_hhs46lfprth_1pw57vw0000gn/T/bundler20150320-66140-15yne3b/pg-0.18.1/gems/pg-0.18.1 for inspection.
Results logged to /var/folders/l7/f3_r_hhs46lfprth_1pw57vw0000gn/T/bundler20150320-66140-15yne3b/pg-0.18.1/gems/pg-0.18.1/ext/gem_make.out
An error occurred while installing pg (0.18.1), and Bundler cannot continue.
Make sure that `gem install pg -v '0.18.1'` succeeds before bundling.
5gfr0r5j

5gfr0r5j1#

告诉系统使用您在计算机上安装的gem
试试看

brew install postgresql

或尝试

ARCHFLAGS="-arch x86_64" bundle install
alen0pnh

alen0pnh2#

我想我在MacOS上也遇到过类似的问题。一旦你安装了PostgreSQL viw brew,你需要像这样安装pg gem:

gem install pg -- --with-pg-config=/usr/local/bin/pg_config

检查详细信息here。这适用于我的MacOS机器。
祝你好运!

mm9b1k5b

mm9b1k5b3#

以下是我对ubuntu20.04的修正:

sudo apt install libpq-dev -y

然后是:

gem install pg -v '0.21.0' --source 'https://rubygems.org/'

相关问题