2015-02-06 26 views
12

Gần đây tôi đã cố gắng nâng cấp ứng dụng đường ray 3.2 * của mình lên đường ray 4.2. *. Nhưng, tôi đã dừng lại trong khi cài đặt đá quý 'pg'. Khi tôi googled nó, các giải pháp mà chủ yếu là liên quan đến OSX chỉ. Nhưng tôi đang sử dụng ubuntu 14.04. Cần bất kỳ đề xuất nào cho vấn đề dưới đây.đường ray 4.2.0: không thể cài đặt đá quý pg trên ubuntu 14.04

Tôi đã cài đặt phiên bản postgresql 9.3.5 trên máy của mình.

Gem::Ext::BuildError: ERROR: Failed to build gem native extension. 

    /usr/local/rvm/rubies/ruby-2.1.2/bin/ruby extconf.rb 
checking for pg_config... yes 
Using config values from /usr/bin/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=/usr/local/rvm/rubies/ruby-2.1.2/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}/lib 

extconf failed, exit code 1 

Gem files will remain installed in /usr/local/rvm/gems/[email protected]/gems/pg-0.18.1 for inspection. 
Results logged to /usr/local/rvm/gems/[email protected]/extensions/x86_64-linux/2.1.0/pg-0.18.1/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. 
+0

@ mr-đen xin vui lòng xem xét câu trả lời của tôi và chấp nhận nó như là câu trả lời đúng –

Trả lời

31

Bạn cần cài đặt gói PostgreSQL dev với tiêu đề của PostgreSQL

sudo apt-get install libpq-dev 

Bạn cũng có thể thử

sudo apt-get install postgresql-client 
sudo apt-get install postgresql postgresql-contrib 
+1

Tôi đã cài đặt các gói phụ thuộc đó. Nhưng, một lần nữa tôi thất bại. –

+1

Bạn đã xem http://stackoverflow.com/questions/3116015/how-to-install-gem-pg-on-ubuntu –

+0

sudo apt-get cài đặt postgresql postgresql-contrib, điều này có thể phù hợp với bạn –

10

Ran vào vấn đề này chính xác cố gắng gem install pg -v 0.18.1 với postgresql 9.4 trên Ubuntu 14.04

sudo apt-get install libpq-dev build-essential postgresql-server-dev-9.4 

Về cơ bản tôi đã mất tích postgresql-server-dev-${version}

Trong trường hợp của bạn thử

sudo apt-get install libpq-dev build-essential postgresql-server-dev-9.3 
+3

Cảm ơn bạn! Btw, sudo apt-get cài đặt libpq-dev là đủ cho tôi. – mondayguy

+0

Tôi đã đấu vật này trong vài ngày và không có gì giúp cho đến khi gói 'build-essential' được cài đặt (cho' gem pg 0.21') .. Tôi không thấy bất cứ nơi nào khác, vì vậy cảm ơn bạn! – kevlarr

+1

Mặc dù chỉ cần thử với 'apt-get install libpq-dev gcc make' chứ không phải là' build-essential' đầy đủ và nó cũng hoạt động tốt – kevlarr

0

theo lệnh này trên ubuntu 16,04

sudo apt install libpq-dev postgresql-server 
sudo -u postgres createuser -s $(whoami); createdb $(whoami) 
gem install pg 
Các vấn đề liên quan