Lorsque j'essaye d'exécuter bundle (bundle install), je reçois tout le temps
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.
J'utilise Mac OS X 10.6, la version de PostgreSQL installée est la 9.1. J'ai trouvé que le problème se trouve dans la libpq-dev , comment puis-je installer / résoudre ce problème?
ruby-on-rails
macos
postgresql-9.1
pg
libpq
user984621
la source
la source
sudo port install libpq-dev
mais un autre problème -Error: Port libpq-dev not found To report a bug, see <http://guide.macports.org/#project.tickets>
. C'est terrible, encore quelques problèmes ...Réponses:
Comme indiqué dans votre journal des erreurs, vous devez passer le chemin vers le fichier pg_config. Essayez d'installer la gemme en utilisant:
Si vous ne savez pas où se trouve votre pg_config et en supposant que vous êtes sous Linux ou Mac, vous pouvez exécuter la commande suivante:
Votre pg-config peut se trouver à différents endroits selon la façon dont vous avez installé postgres.
la source
pg_config
programme.pg_config
(par exemple, à/Library/PostgreSQL/9.1/bin/pg_config
des 9.1.x) et les en- têtes de développement. C'est ce que j'utilise pour tester lapg
gemme en développement.which pg_config
plus rapide quefind / -name pg_config
?brew install libpqxx
et tout se passera bien.si vous utilisez Linux, vous pourriez être intéressé par ce qui a fonctionné pour moi:
ensuite
puis
src: http://wikimatze.de/installing-postgresql-gem-under-ubuntu-and-mac
la source
Si vous utilisez Postgress.app, vous souhaiterez accéder à ses outils de ligne de commande . Entrez la ligne suivante dans votre terminal ou votre profil PATH :
gem install pg
devrait maintenant fonctionner. (C'est ce qui a fonctionné pour moi.)Remarque Le chemin des nouvelles versions ressemble à ceci:
la source
/Applications/Postgres.app/Contents/Versions/9.3/bin
partir de 9.3.5 si vous utilisez le Postgres.appSi vous avez un homebrew, tapez simplement:
Si vous ne l'avez pas, téléchargez en tapant ceci dans votre terminal:
la source
Recherchez libpq:
Devrait sortir
libpqxx
Ensuite, essayez de l'installer:
la source
Il vous suffit d'installer
libpq-dev
:Ensuite, la gemme devrait s'installer très bien.
la source
Suivez les instructions de post-installation: http://postgresapp.com/documentation/configuration-ruby.html
Pour installer le gem pg, assurez-vous d'avoir correctement configuré votre $ PATH (comme spécifié dans http://postgresapp.com/documentation/cli-tools.html ), puis exécutez
sudo ARCHFLAGS="-arch x86_64" gem install pg
Je recommande fortement de lire les deux pages. Je les ai juste écrémés et j'ai perdu 1 heure de ma vie. Lisez-les, problème résolu.
la source
Le problème que j'avais était que, pour une raison quelconque, il essayait de compiler avec /usr/bin/gcc-4.2. J'ai découvert cela en changeant try_cpp dans mkmf.rb (que j'ai vu dans la trace de la pile) pour lever une exception avec la ligne de compilation qui échouait.
J'ai lié gcc à gcc-4.2 et cela a fonctionné:
Pourquoi essayait-il d'utiliser gcc-4.2? Aucune idée.
La ligne de compilation réelle:
la source
J'ai eu le même problème mais mon Postgres était installé dans
/Library/PostgreSQL/9.3
Mise à jour du ~ / .bash_profile en ajoutant:
Ouvrez un nouveau terminal, exécutez
bundle update
et cela a fonctionné pour moi. Merci Ari.la source
Vous pouvez définir une option de configuration de construction
bundle config build.pg --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.3/bin/pg_config
et l'utilisergem install pg
sans aucune option (le chemin vers pg_config peut être différent pour vous, celui-ci est pour Postgresapp 9.3.5.0)la source
J'ai eu le même problème dans ma machine openSUSE13.1 KDE. Avant ce problème que j'ai rencontré, j'avais installé uniquement les packages
postgresql
et enpostgresql-server
utilisant lazypper
commande. Puis installé à nouveau 2 autres packages:Ensuite, j'ai couru à nouveau
bundle install
, et succès !!!la source
Pour une solution OSX fonctionnelle, consultez ce guide http://krugerdavid.com/journal/how-to-install-xcode-homebrew-git-rvm-postgresql-ruby-1-9-3-on-snow-leopard/
Il vous guidera tout au long de l'installation de PostgreSQL en utilisant homebrew. Testé et fonctionnant pour moi sur OSX 10.8.3, PostgreSQL 9.2.3 et Ruby 2.0.0-p0
la source
Tout d'abord, désinstallez toutes les versions de Homebrew. L'option --force permet de désinstaller toutes les versions.
Modifiez les chemins en fonction de votre version.
Modifiez / etc / profile et supprimez toutes les lignes faisant référence à "postgres".
Installez PostgresSQL
Installer de PG GEM
C'est tout. Cordialement.
la source
Vous pouvez d'abord vérifier si vous avez un fichier postrgresql dans votre terminal en allant dans le fichier lib. allez cd ~ / opt / local / lib / puis tapez ls et le bouton Entrée. Cela vous montrera une liste de tous les fichiers qui se trouvent dans le répertoire lib.
1.si vous n'avez pas postreseql, vous pouvez télécharger via macports. sudo port installer postgresql93 @ 9.3.2_1
Maintenant, cd de nouveau dans votre dossier que vous essayez de regrouper l'installation
lancez maintenant l'installation du bundle
la source
Sur Fedora:
la source
Ce qui a fonctionné pour moi sur El Capitan était la mise à niveau de ruby de la valeur par défaut du système vers la version 2.3.1 semblait trouver les bibliothèques correctes dont le
pg
gemme avait besoin.la source