Une erreur s’est produite lors de l’installation de pg (0.17.1) et Bundler ne peut pas continuer

Je viens d’installer Rails 4.0.2 et lors de la création d’une nouvelle application, dans la version groupée, je reçois:

 Installing pg (0.17.1) Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. /Users/Dee/.rvm/rubies/ruby-2.0.0-p247/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. 

Comment puis-je réparer ça?

Je suis sur un Mac exécutant Mavericks. Ma solution était d’installer Postgres .

Et puis en installation de terminal en utilisant homebrew avec la configuration:

 gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/latest/bin/pg_config 

Remarque: cette réponse a été modifiée pour utiliser le latest lien symbolique actuellement inclus dans les versions d’expédition de l’application Postgres.

Les versions précédentes suggéraient:

 gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.4/bin/pg_config 

Une erreur a été commise ici Installation de PG gem sous OS X – Echec de la génération de l’extension native

Pour installer des dépendances sur Ubuntu, essayez ceci:

 sudo apt-get install libpq-dev 

et ça

 gem install pg 

application racine:

  1. mise à jour de l’infusion
  2. armser installer postgres
  3. install gem – –with-pg-config = / usr / local / Cellar / postgresql / 9.3.4 / bin / pg_config
  4. installation groupée
  5. ln -sfv /usr/local/opt/postgresql/*.plist ~ / Library / LaunchAgents
  6. launchctl charge ~ / Library / LaunchAgents / homebrew.mxcl.postgresql.plist
  7. createuser -s -r postgres
  8. rake db: create: all
  9. rake db: migrer
  10. rails s

REMARQUE: remplacez le numéro de version à l’étape 3 si nécessaire.

Auparavant, réponse avec une version antérieure

J’ai installé sous Mac OSX Mavericks, avec l’application postgres (Version 9.2.2.0) de http://www.postgresapp.com installée. Le problème sous-jacent était simple: depuis l’installation de postgres via l’application, le fichier de configuration réside dans un emplacement qui n’est pas celui par défaut lors de son installation sans postgressapp. nous devons donc dire à gem où trouver ce fichier par:

gem install pg – –with-pg-config = / Applications / Postgres.app / Contents / MacOS / bin / pg_config

J’espère que cela aide

Si gem install pg échoue, essayez la commande suivante:

 env ARCHFLAGS="-arch x86_64" gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/MacOS/bin/pg_config 

… de la documentation PostgreSQL.app

On dirait que vous n’avez pas installé PostgreSQL. Le gem pg nécessite des en-têtes de PostgreSQL pour comstackr une extension native.

Je devais combiner tout et utiliser

 sudo env ARCHFLAGS="-arch x86_64" gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.4/bin/pg_config 

Si vous utilisez autre chose que Postgres en développement et Postgres en production uniquement, vous pouvez append le gem pg à votre fichier gemfile comme ça …

 group :production do gem 'pg', '0.17.1' end 

Ensuite, utilisez une bundle install --without production

Pour les utilisateurs de CentOS:

 sudo yum install postgresql-devel 

et

 gem install pg 

Après l’installation de Postgres, j’ai dû exécuter la commande suivante

 env ARCHFLAGS="-arch x86_64" gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.3/bin/pg_config 

Après cette installation groupée fonctionne très bien!

J’espère que cela aide

La façon dont j’ai réussi à dépasser cette erreur était la suivante:

  • cd au dossier app, puis définissez la version ruby ​​localement. J’utilise Ruby 2.1.2.

rbenv local 2.1.2

  • au lieu de simplement exécuter l’installation groupée, installez les gems dans vendor / bundle

bundle install –path vendor / bundle

Cela l’a fait pour moi.

Je devais utiliser sudo

 sudo gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.5/bin/pg_config 

Ça marche pour moi

 rvm list gemsets rvm use ruby-2.4.1 bundle 

erreur [! [résolu avec rvm utiliser ruby ] 2