2016-08-19 78 views
0

使用PostgreSQL 9.5.4开发一个新的Ruby on Rails 5.0应用程序。试图安装pg gem时遇到问题Rails 5,为Postgres安装pg gem时出错9.5.4

软件包安装失败,因为它似乎无法在尝试构建本机扩展时找到pg_config和错误。

ERROR: Error installing pg: 
ERROR: Failed to build gem native extension. 

checking for pg_config... no 
No pg_config... trying anyway. If building fails, please try again with 
--with-pg-config=/path/to/pg_config 
checking for libpq-fe.h... no 

Can't find the 'libpq-fe.h header 
*** 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=/Users/brian.hooper/.rbenv/versions/2.3.0/bin/$(RUBY_BASE_NAME) 
    --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}/lib 

To see why this extension failed to compile, please check the mkmf.log 

回答

1

位后故障排除,下面是简单的解决方法我曾经解决这个问题:

1)找到pg_configbin目录中的PostgreSQL安装下

# Example: 
/Library/PostgreSQL/9.5/bin/pg_config 

2 。)从Rails项目的根目录运行以下软件包命令

bundle config build.pg --with-pg-config=<path_to_postgresql>/bin/pg_config 

# Example: 
bundle config build.pg --with-pg-config=/Library/PostgreSQL/9.5/bin/pg_config 

3.)构建完成后,运行bundle install。正如您在下面看到的,pg gem已成功安装。 Installing pg 0.18.4 with native extensions

bundle install 

Fetching gem metadata from https://rubygems.org/........... 
Fetching version metadata from https://rubygems.org/... 
Fetching dependency metadata from https://rubygems.org/.. 
Resolving dependencies..... 
Using rake 11.2.2 
Using concurrent-ruby 1.0.2 
Using i18n 0.7.0 
Using minitest 5.9.0 
Using thread_safe 0.3.5 
Using builder 3.2.2 
Using erubis 2.7.0 
Using mini_portile2 2.1.0 
Using pkg-config 1.1.7 
Using rack 2.0.1 
Using nio4r 1.2.1 
Using websocket-extensions 0.1.2 
Using mime-types-data 3.2016.0521 
Using arel 7.1.1 
Using bundler 1.11.2 
Using byebug 9.0.5 
Using coffee-script-source 1.10.0 
Using execjs 2.7.0 
Using method_source 0.8.2 
Using thor 0.19.1 
Using debug_inspector 0.0.2 
Using ffi 1.9.14 
Using multi_json 1.12.1 
Using rb-fsevent 0.9.7 
Installing pg 0.18.4 with native extensions 
Using puma 3.6.0 
Using sass 3.4.22 
Using tilt 2.0.5 
Using spring 1.7.2 
Using turbolinks-source 5.0.0 
Using tzinfo 1.2.2 
Using nokogiri 1.6.8 
Using rack-test 0.6.3 
Using sprockets 3.7.0 
Using websocket-driver 0.6.4 
Using mime-types 3.1 
Using coffee-script 2.4.1 
Using uglifier 3.0.1 
Using rb-inotify 0.9.7 
Using turbolinks 5.0.1 
Using activesupport 5.0.0.1 
Using loofah 2.0.3 
Using mail 2.6.4 
Using listen 3.0.8 
Using rails-dom-testing 2.0.1 
Using globalid 0.3.7 
Using activemodel 5.0.0.1 
Using jbuilder 2.6.0 
Using rails-html-sanitizer 1.0.3 
Using spring-watcher-listen 2.0.0 
Using activejob 5.0.0.1 
Using activerecord 5.0.0.1 
Using actionview 5.0.0.1 
Using actionpack 5.0.0.1 
Using actioncable 5.0.0.1 
Using actionmailer 5.0.0.1 
Using railties 5.0.0.1 
Using sprockets-rails 3.1.1 
Using coffee-rails 4.2.1 
Using jquery-rails 4.1.1 
Using web-console 3.3.1 
Using rails 5.0.0.1 
Using sass-rails 5.0.6 
Bundle complete! 15 Gemfile dependencies, 63 gems now installed. 
Use `bundle show [gemname]` to see where a bundled gem is installed.