110 votes

Impossible d'installer PG gem sur mon mac avec Mavericks

Je suis en train d'installer le pg gem afin de travailler à nouveau avec mon rails de projets. Mais j'ai cette erreur:

La construction d'extensions natives. Cela pourrait prendre un certain temps... ERREUR: Erreur l'installation de pg: ERREUR: Échec de création d'gem extension native.

/Users/jeanosorio/.rvm/rubies/ruby-2.0.0-p247/bin/ruby extconf.rb checking for pg_config... no No pg_config... trying anyway. If

la construction échoue, essayez à nouveau avec --with-pg-config=/chemin/vers/pg_config la vérification de libpq-fe.h... ne Peut pas trouver le " libpq-fe.h-tête * extconf.rb a échoué * n'a pas Pu créer le Makefile pour une raison quelconque, probablement le manque de bibliothèques et/ou les en-têtes. Vérifier le mkmf.le fichier journal pour plus de détails. Vous pouvez avoir besoin de configuration des options.

Fournis options de configuration: --with-opt-dir-sans-opt-dir --with-opt-comprennent-sans-opt-include=${opt-dir}/include --with-opt-lib-sans-opt-lib=${opt-dir}/lib --with-faire-prog - sans-faire-prog --srcdir=. --curdir --ruby=/Users/jeanosorio/.rvm/rubis/ruby 2.0.0-p247/bin/ruby --with-pg-sans-pg-avec-pg-config --sans-pg-config --with-pg_config --sans-pg_config --with-pg-dir --sans-pg-dir-avec-pg-inclure --sans-pg-include=${pg-dir}/include --with-pg-lib --sans-pg-lib=${pg-dir}/

Gem fichiers restent installés dans /Utilisateurs/jeanosorio/.rvm/rubis/ruby 2.0.0-p247/lib/ruby/gems/2.0.0/gems/pg-0.17.0 pour l'inspection. Les résultats enregistrés sur /Utilisateurs/jeanosorio/.rvm/rubis/ruby 2.0.0-p247/lib/ruby/gems/2.0.0/gems/pg-0.17.0/ext/gem_make.hors

J'ai essayé tout ce que j'ai trouvé sur stackoverflow mais j'ai toujours cette erreur.

Si j'essaie d'installer postgresql à l'aide de brew j'ai le waring:

Avertissement: postgresql-9.2.4 déjà installé, c'est juste pas lié

Si j'essaie de lien

brew lien postgresql Liaison /usr/local/Cave/postgresql/9.2.4... Avertissement: impossible de lien postgresql. La dissociation...

Erreur: n'a pas de lien symbolique du fichier: /usr/local/Cave/postgresql/9.2.4/share/man/man7/.7 /usr/local/share/man/man7 n'est pas accessible en écriture. Il faut changer la les autorisations.

Aide S'Il Vous Plaît

NOTE: j'ai déjà installé les outils de ligne de commande pour mavericks.


Si je désinstaller à l'aide des homebrew et essayez d'installer à nouveau, j'obtiens cette erreur:

==> Téléchargement http://ftp.postgresql.org/pub/source/v9.2.4/postgresql-9.2.4.tar.bz2

################################################################## 100.0%

==> Patcher le fichier src/pl/plpython/Makefile patching file contrib/uuid-ossp/uuid-ossp.c ==> ./configure --prefix=/usr/local/Cave/postgresql/9.2.4 --datadir=/usr/local/Cave/postgresql/9.2.4/share/postgresql --docdir=/usr/local/Cave/p ==> make install-monde ==> Les mises en garde

Construire Des Notes

Si les versions de PostgreSQL 9 sont défaillants et que vous avez la version 8.x installé, vous devrez peut-être supprimer la version précédente de la première. Voir:
https://github.com/mxcl/homebrew/issues/issue/2510

Créer/mettre à niveau une Base de données

Si c'est votre première installation, créez une base de données: initdb /usr/local/var/postgres -E utf8

Pour migrer des données à partir d'une version précédente (pré-9.2) de PostgreSQL, voir:
http://www.postgresql.org/docs/9.2/static/upgrading.html

Le Chargement Des Extensions

Par défaut, Homebrew construit tous disponibles Contrib extensions. Pour voir un liste de toutes les extensions disponibles, à partir de la psql ligne de commande, exécutez:
SÉLECTIONNEZ * à PARTIR de pg_available_extensions;

Pour charger des noms d'extension, accédez à la base de données souhaitée et de lancer: CRÉER une EXTENSION de [nom de l'extension de];

Par exemple, pour charger le tablefunc extension dans la base de données actuelle, exécuter: CRÉER une EXTENSION de tablefunc;

Pour plus d'informations sur le fait de CRÉER une EXTENSION de commande, voir:
http://www.postgresql.org/docs/9.2/static/sql-createextension.htmlPour plus d'informations sur les extensions, voir:
http://www.postgresql.org/docs/9.2/static/contrib.html

D'autres

Certaines machines peuvent exiger de l'approvisionnement de la mémoire partagée:
http://www.postgresql.org/docs/9.2/static/kernel-resources.html#SYSVIPC Lors de l'installation de postgres gem, y compris ARCHFLAGS est recommandé: ARCHFLAGS="-arch x86_64" gem install pg

Pour installer des gems sans sudo, voir le Homebrew wiki.

Pour avoir launchd démarrer postgresql lors de la connexion: ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents Alors à la charge de postgresql maintenant: launchctl charge de ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist Ou, si vous n'avez pas voulez/besoin launchctl, il vous suffit d'exécuter: pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/serveur.journal de commencer Avertissement: impossible de lien postgresql. La dissociation... Erreur: brew link étape n'est pas terminée avec succès La formule construit, mais n'est pas un lien symbolique dans /usr/local Vous pouvez essayer de nouveau en utilisant `brew lien postgresql' ==> Résumé

78voto

Ayush Goel Points 156

Utilisez infusion pour obtenir postgresql

 brew install postgresql
 

Vérifiez que vous avez pg_config dans la distribution installée. J'ai trouvé le mien dans

/usr/local/Cellar/postgresql/9.3.3/bin/pg_config

Vérifier via:

 $ ls /usr/local/Cellar/postgresql/9.3.3/bin/pg_config
> /usr/local/Cellar/postgresql/9.3.3/bin/pg_config
 

Une fois cela fait, installez le pg gem avec

 env ARCHFLAGS="-arch x86_64" gem install pg -- --with-pg-config=/usr/local/Cellar/postgresql/9.3.3/bin/pg_config
 

37voto

iceui2 Points 306

Je n'ai pas pu installer Postgres via MacPorts. Au lieu de cela, j'ai installé Postgress.app . et appelé

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

Remarque: dans les versions plus récentes (au moins en 9.3), le chemin est en réalité: /Applications/Postgres.app/Contents/Versions/9.3/bin/pg_config

12voto

user2373148 Points 91

Si vous avez un homebrew, tapez simplement:

$ brew installer postgresql

10voto

2potatocakes Points 1382

Voici une autre alternative dans le cas où vous souhaitez utiliser le programme d'installation de postgresql directement. Il ya un couple de cerceaux tu dois sauter à travers pour commencer après la mise à jour de mavericks. Voici ce que j'ai fait:

Installer xcode outils de ligne de commande de la première:

xcode-select --install

Téléchargez et installez la dernière version de PostgreSQL (9.3.1), dans mon cas, j'ai juste utilisé le programme d'installation graphique. Voici le lien vers la page de téléchargement:

http://www.enterprisedb.com/products-services-training/pgdownload#osx

Il suffit de choisir toutes les valeurs par défaut, il vous donne. C'est mon cas, il est installé postgres pour le répertoire suivant, si vous l'avez installé dans un autre répertoire, n'oubliez pas le chemin que vous avez choisi, car vous aurez besoin de peu de temps.

/Library/PostgreSQL/9.3

Si vous essayez maintenant et installez la dernière pg gem (0.17.0) vous aurez besoin de passer un couple d'options sur la ligne de commande. C'est ce que j'ai utilisé:

ARCHFLAGS="-arch x86_64" gem install pg -- --with-pg-config=/Library/PostgreSQL/9.3/bin/pg_config

Si vous avez installé postgres à un emplacement différent, alors vous aurez besoin pour fixer le chemin d'accès à la pg_config fichier.

Si elle se plaint d'un manque de " libpq.5.dylib " fichier tout en essayant d'installer le pg bijou que vous aurez besoin de créer un lien symbolique pointant vers l'emplacement réel de ce fichier. Postgres est de le trouver dans votre /usr/local/lib/ afin de créer un lien symbolique dans il y et le rediriger vers son emplacement actuel. Dans mon cas, j'ai eu à exécuter:

sudo ln -s /Library/PostgreSQL/9.3/lib/libpq.5.dylib /usr/local/lib/libpq.5.dylib

Une fois que vous avez fait cela, réessayer d'installer le gem de nouveau et j'espère qu'il va travailler pour vous de la même manière qu'il a fait pour moi.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X