Kiedy próbuję uruchomić pakiet (instalacja pakietu), cały czas otrzymuję
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.
Używam Mac OS X 10.6, zainstalowana wersja PostgreSQL to 9.1. Znalazłem problem w libpq-dev , jak mogę to zainstalować / naprawić?
ruby-on-rails
macos
postgresql-9.1
pg
libpq
user984621
źródło
źródło
sudo port install libpq-dev
ale inny problem -Error: Port libpq-dev not found To report a bug, see <http://guide.macports.org/#project.tickets>
. To okropne, wciąż są problemy ...Odpowiedzi:
Jak stwierdzono w dzienniku błędów, musisz podać ścieżkę do pliku pg_config. Spróbuj zainstalować klejnot za pomocą:
Jeśli nie jesteś pewien, gdzie znajduje się twój pg_config i zakładając, że korzystasz z systemu Linux lub Mac, możesz uruchomić następujące polecenie:
Twój pg-config może znajdować się w różnych lokalizacjach, w zależności od tego, jak zainstalowałeś postgres.
źródło
pg_config
programistycznych ani programu.pg_config
(na przykład co/Library/PostgreSQL/9.1/bin/pg_config
do 9.1.x) i nagłówki rozwojowe. To jest to, czego używam do testowaniapg
klejnotu w fazie rozwoju.which pg_config
byłoby szybsze niżfind / -name pg_config
?brew install libpqxx
i wszystko pójdzie dobrze.jeśli używasz Linuksa, możesz być zainteresowany tym, co zadziałało dla mnie:
Następnie
następnie
src: http://wikimatze.de/installing-postgresql-gem-under-ubuntu-and-mac
źródło
Jeśli używasz Postgress.app, będziesz chciał mieć dostęp do jego narzędzi wiersza poleceń . Wprowadź następujący wiersz w swoim terminalu lub w profilu PATH :
gem install pg
powinno teraz działać. (To właśnie zadziałało dla mnie.)Uwaga Ścieżka do nowych wersji wygląda następująco:
źródło
/Applications/Postgres.app/Contents/Versions/9.3/bin
od 9.3.5, jeśli używasz Postgres.appJeśli masz homebrew, po prostu wpisz:
Jeśli go nie masz, pobierz wpisując to w swoim terminalu:
źródło
Wyszukaj libpq:
Powinien wyjść
libpqxx
Następnie spróbuj go zainstalować:
źródło
Wystarczy zainstalować
libpq-dev
:Następnie klejnot powinien zainstalować się dobrze.
źródło
Postępuj zgodnie z instrukcjami poinstalacyjnymi: http://postgresapp.com/documentation/configuration-ruby.html
Aby zainstalować pg gem, upewnij się, że poprawnie skonfigurowałeś $ PATH (jak określono w http://postgresapp.com/documentation/cli-tools.html ), a następnie uruchom
sudo ARCHFLAGS="-arch x86_64" gem install pg
Ja zdecydowanie polecam czytania obu stron. Po prostu je przejrzałem i straciłem godzinę życia. Przeczytaj je, problem rozwiązany.
źródło
Problem, który miałem, polegał na tym, że z jakiegoś powodu próbował się skompilować z /usr/bin/gcc-4.2. Odkryłem to, zmieniając try_cpp w mkmf.rb (co widziałem w śladzie stosu), aby zgłosić wyjątek z linią kompilacji, która kończyła się niepowodzeniem.
Miękko podłączyłem gcc do gcc-4.2 i zadziałało:
Dlaczego próbował użyć gcc-4.2? Brak pomysłu.
Rzeczywista linia kompilacji:
źródło
Mam ten sam problem, ale mój Postgres został zainstalowany w
/Library/PostgreSQL/9.3
Zaktualizowano ~ / .bash_profile, dodając:
Otwórz nowy terminal, uruchom,
bundle update
a także zadziałał dla mnie. Dzięki Ari.źródło
Możesz ustawić opcję konfiguracji kompilacji
bundle config build.pg --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.3/bin/pg_config
i używaćgem install pg
bez żadnych opcji (ścieżka do pg_config może być inna dla Ciebie, ta jest dla Postgresapp 9.3.5.0)źródło
Miałem ten sam problem na mojej maszynie KDE openSUSE13.1. Zanim napotkałem ten problem, instalowałem tylko pakiety
postgresql
ipostgresql-server
używajączypper
polecenia. Następnie ponownie zainstalowałem 2 kolejne pakiety:Potem znowu pobiegłem
bundle install
i sukces !!!źródło
Aby uzyskać działające rozwiązanie OSX, zobacz ten przewodnik http://krugerdavid.com/journal/how-to-install-xcode-homebrew-git-rvm-postgresql-ruby-1-9-3-on-snow-leopard/
Przeprowadzi Cię przez instalację PostgreSQL za pomocą homebrew. Przetestowane i działa dla mnie na OSX 10.8.3, PostgreSQL 9.2.3 i Ruby 2.0.0-p0
źródło
Najpierw odinstaluj wszystkie wersje Homebrew. Opcja --force powoduje odinstalowanie wszystkich wersji.
Zmień ścieżki odpowiednio do swojej wersji.
Edytuj / etc / profile i usuń wszystkie wiersze, które odnoszą się do „postgres”.
Zainstaluj PostgresSQL
Zainstaluj de PG GEM
Otóż to. Pozdrowienia.
źródło
Możesz najpierw sprawdzić, czy masz plik postrgresql w terminalu, przechodząc do pliku lib. idę cd ~ / opt / local / lib /, a następnie wpisz ls i przycisk Enter. Spowoduje to wyświetlenie listy wszystkich plików znajdujących się w katalogu lib.
1. jeśli nie masz postreseql, możesz pobrać go przez macports. port sudo zainstaluj postgresql93 @ 9.3.2_1
Teraz cd z powrotem do folderu, który próbujesz zainstalować pakiet
teraz uruchom instalację pakietu
źródło
W Fedorze:
źródło
To, co zadziałało dla mnie w El Capitan, to uaktualnienie ruby z domyślnego systemu do 2.3.1. Wydawało się, że znalazłem właściwe biblioteki, których
pg
potrzebował klejnot.źródło