Ketika saya mencoba menjalankan bundle (bundle install), saya selalu mendapatkannya
Installing pg (0.13.2) with native extensions
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/Users/ryan/.rvm/rubies/ruby-1.9.2-p290/bin/ruby extconf.rb
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/ryan/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
--with-pg
--without-pg
--with-pg-dir
--without-pg-dir
--with-pg-include
--without-pg-include=${pg-dir}/include
--with-pg-lib
--without-pg-lib=${pg-dir}/lib
--with-pg-config
--without-pg-config
--with-pg_config
--without-pg_config
Gem files will remain installed in /Users/ryan/.rvm/gems/ruby-1.9.2-p290/gems/pg-0.13.2 for inspection.
Results logged to /Users/ryan/.rvm/gems/ruby-1.9.2-p290/gems/pg-0.13.2/ext/gem_make.out
An error occured while installing pg (0.13.2), and Bundler cannot continue.
Make sure that `gem install pg -v '0.13.2'` succeeds before bundling.
Saya menggunakan Mac OS X 10.6, versi PostgreSQL yang diinstal adalah 9.1. Saya menemukan masalahnya ada di libpq-dev , bagaimana saya bisa menginstal / memperbaikinya?
ruby-on-rails
macos
postgresql-9.1
pg
libpq
pengguna984621
sumber
sumber
sudo port install libpq-dev
tetapi masalah lain -Error: Port libpq-dev not found To report a bug, see <http://guide.macports.org/#project.tickets>
. Itu buruk, masih ada masalah ...Jawaban:
Seperti yang dinyatakan dalam log kesalahan Anda, Anda harus meneruskan jalur ke pg_config. Coba instal permata menggunakan:
Jika Anda tidak yakin di mana pg_config Anda, dan dengan asumsi Anda menggunakan Linux atau Mac, Anda dapat menjalankan perintah berikut:
Pg-config Anda dapat berada di lokasi yang berbeda tergantung pada bagaimana Anda menginstal postgres.
sumber
pg_config
program.pg_config
(misalnya, di/Library/PostgreSQL/9.1/bin/pg_config
untuk 9.1.x) dan header pembangunan. Itu yang saya gunakan untuk mengujipg
permata dalam pengembangan.which pg_config
lebih cepat darifind / -name pg_config
?brew install libpqxx
dan semuanya akan baik-baik saja.jika Anda menjalankan Linux, Anda mungkin tertarik dengan apa yang berhasil untuk saya:
Kemudian
kemudian
src: http://wikimatze.de/installing-postgresql-gem-under-ubuntu-and-mac
sumber
Jika Anda menggunakan Postgress.app maka Anda akan menginginkan akses ke alat baris perintahnya . Masukkan baris berikut di terminal Anda atau profil PATH Anda :
gem install pg
sekarang harus bekerja. (Inilah yang berhasil untuk saya.)Catatan Jalur versi baru terlihat seperti:
sumber
/Applications/Postgres.app/Contents/Versions/9.3/bin
pada 9.3.5 jika Anda menggunakan Postgres.appJika Anda memiliki homebrew, cukup ketik:
Jika Anda tidak memilikinya, unduh ketikan ini di terminal Anda:
sumber
Cari libpq:
Haruskah keluaran
libpqxx
Kemudian coba instal:
sumber
Anda hanya perlu menginstal
libpq-dev
:Maka permata harus dipasang dengan baik.
sumber
Ikuti petunjuk pasca-instalasi: http://postgresapp.com/documentation/configuration-ruby.html
Untuk menginstal pg gem, pastikan Anda telah mengatur $ PATH Anda dengan benar (seperti yang ditentukan di http://postgresapp.com/documentation/cli-tools.html ), lalu jalankan
sudo ARCHFLAGS="-arch x86_64" gem install pg
Saya sangat merekomendasikan membaca kedua halaman tersebut. Hanya membaca sepintas dan kehilangan 1 jam dalam hidup saya. Bacalah, masalah terpecahkan.
sumber
Masalah yang saya alami adalah karena suatu alasan ia mencoba mengkompilasi dengan /usr/bin/gcc-4.2. Saya mengetahuinya dengan mengubah try_cpp di mkmf.rb (yang saya lihat di pelacakan tumpukan) untuk memunculkan pengecualian dengan baris kompilasi yang gagal.
Saya menghubungkan gcc dengan lembut ke gcc-4.2 dan berhasil:
Mengapa mencoba menggunakan gcc-4.2? Tidak ada ide.
Baris kompilasi sebenarnya:
sumber
Saya mendapat masalah yang sama tetapi Postgres saya diinstal
/Library/PostgreSQL/9.3
Memperbarui profil ~ / .bash_ dengan menambahkan:
Buka terminal baru, jalankan
bundle update
dan juga berfungsi untuk saya. Terima kasih Ari.sumber
Anda dapat mengatur opsi build config
bundle config build.pg --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.3/bin/pg_config
dan menggunakannyagem install pg
tanpa opsi apa pun (jalur ke pg_config mungkin berbeda untuk Anda, yang ini untuk Postgresapp 9.3.5.0)sumber
Saya memiliki masalah yang sama di mesin KDE openSUSE13.1 saya. Sebelum masalah itu saya temui, saya hanya menginstal paket
postgresql
danpostgresql-server
menggunakanzypper
perintah. Kemudian instal lagi 2 paket lagi:Lalu, saya lari lagi
bundle install
, dan sukses !!!sumber
Untuk solusi OSX yang berfungsi, lihat panduan ini http://krugerdavid.com/journal/how-to-install-xcode-homebrew-git-rvm-postgresql-ruby-1-9-3-on-snow-leopard/
Ini akan memandu Anda dalam menginstal PostgreSQL menggunakan homebrew. Diuji dan berfungsi untuk saya di OSX 10.8.3, PostgreSQL 9.2.3, dan Ruby 2.0.0-p0
sumber
Pertama, hapus instalan versi Homebrew apa pun. Opsi --force membuatnya menghapus semua versi.
Ubah jalur yang sesuai untuk versi Anda.
Edit / etc / profile dan hapus baris yang mereferensikan "postgres".
Instal PostgresSQL
Instal de PG GEM
Itu dia. Salam.
sumber
Pertama-tama Anda dapat memeriksa untuk melihat apakah Anda memiliki file postrgresql di terminal Anda dengan membuka file lib. pergi cd ~ / opt / local / lib / lalu ketik ls dan tombol enter. Ini akan menunjukkan kepada Anda daftar semua file yang terletak di direktori lib.
1.jika Anda belum memiliki postreseql, Anda dapat mendownload melalui macports. sudo port menginstal postgresql93 @ 9.3.2_1
Sekarang cd kembali ke folder Anda yang Anda coba bundel instal
sekarang jalankan bundle install
sumber
Di Fedora:
sumber
Apa yang berhasil bagi saya di El Capitan adalah memutakhirkan ruby dari default sistem ke 2.3.1 tampaknya menemukan pustaka yang benar yang
pg
dibutuhkan permata.sumber