Comment trouver le chemin de configuration pg
Complétez le débutant ici, en essayant de configurer Django pour qu'il fonctionne avec ProstgreSQL.
J'utilise mac osx 10.6.8. J'ai également installé PostgreSQL 9.3
Quand je lance pip install psycopg2
dans le terminal, j'obtiens l'erreur suivante
Downloading/unpacking psycopg2
Downloading psycopg2-2.5.2.tar.gz (685kB): 685kB downloaded
Running setup.py (path:/private/var/folders/A9/A99cs6x0FNusPejCVkYNTE+++TI/-Tmp-/pip_build_bengorman/psycopg2/setup.py) egg_info for package psycopg2
Error: pg_config executable not found.
Please add the directory containing pg_config to the PATH
or specify the full executable path with the option:
python setup.py build_ext --pg-config /path/to/pg_config build ...
or with the pg_config option in 'setup.cfg'.
Complete output from command python setup.py egg_info:
running egg_info
creating pip-egg-info/psycopg2.egg-info
writing pip-egg-info/psycopg2.egg-info/PKG-INFO
writing top-level names to pip-egg-info/psycopg2.egg-info/top_level.txt
writing dependency_links to pip-egg-info/psycopg2.egg-info/dependency_links.txt
writing manifest file 'pip-egg-info/psycopg2.egg-info/SOURCES.txt'
warning: manifest_maker: standard file '-c' not found
Error: pg_config executable not found.
Please add the directory containing pg_config to the PATH
or specify the full executable path with the option:
python setup.py build_ext --pg-config /path/to/pg_config build ...
or with the pg_config option in 'setup.cfg'.
J'ai vu un certain nombre de messages à ce sujet
Comment installer-psycopg2-avec-pip-sur-python
pg-config-exécutable-introuvable
, Mais je n'ai aucune idée de comment trouver l'emplacement du dossier bin contenant pg_config. Des conseils sur la recherche ce chemin?
11 réponses
Je vous recommande d'essayer D'utiliser Postgres.App. ( http://postgresapp.com )
De cette façon, vous pouvez facilement activer et désactiver Postgres sur votre Mac.
Une fois que vous le faites, ajoutez le chemin vers Postgres à votre fichier .profile
en ajoutant ce qui suit:
PATH="/Applications/Postgres.app/Contents/Versions/latest/bin:$PATH"
Seulement après avoir ajouté Postgres à votre chemin, vous pouvez essayer d'installer psycopg2
dans un environnement virtuel (en utilisant pip) ou dans vos packages de site global.
Postgres.app a été mis à jour récemment. Maintenant, il stocke tous les binaires dans le dossier "Versions"
PATH="/Applications/Postgres.app/Contents/Versions/9.4/bin:$PATH"
Où 9.4-version de PostgreSQL.
sudo find / -name "pg_config" -print
La réponse est /Library / PostgreSQL/9.1/bin / pg_config dans ma configuration (MAC Maverick)
Installer homebrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.github.com/gist/323731)"
Puis installer postgresql
brew install postgresql
M'a donné cette belle sortie:
checking for pg_config... yes
Ahhh yeahhhhh
Une fois que vous avez installé L'application PostgreSQL actuelle sur MacOS X 10.11, c'est là que se trouve le fichier pg_config /Library/PostgreSQL/9.5/bin/pg_config
.
Puis sur le Terminal:
$ export PG_HOME=/Library/PostgreSQL/9.5
$ export PATH=$PATH:$PG_HOME/bin
Cela mettra le chemin dans le .profil de tout terminal que vous utilisez.
Dans votre environnement (en supposant que vous utilisez virtualenv
), vous installez ensuite psycopg2:
$ pip install psycopg2
, Vous devriez voir si vous l'aviez téléchargé avant:
Collecting psycopg2
Using cached psycopg2-2.6.1.tar.gz
Installing collected packages: psycopg2
Running setup.py install for psycopg2 ... done
Successfully installed psycopg2-2.6.1
Pour résumer, -- PostgreSQL installe ses fichiers (y compris ses fichiers binaires ou exécutables) à différents emplacements, en fonction du numéro de version et de la méthode d'installation.
Quelques-unes des possibilités:
/usr/local/bin/
/Library/PostgreSQL/9.2/bin/
/Applications/Postgres93.app/Contents/MacOS/bin/
/Applications/Postgres.app/Contents/Versions/9.3/bin/
Pas étonnant que les gens se confondent!
En outre, si votre variable d'environnement $ PATH inclut un chemin vers le répertoire qui inclut un fichier exécutable (pour confirmer cela, utilisez echo $PATH
sur la ligne de commande), vous pouvez exécuter which pg_config
, which psql
, etc. pour savoir où le fichier est situé.
J'ai eu exactement la même erreur, mais j'ai installé postgreSQL via brew et réexécuté la commande d'origine et cela a parfaitement fonctionné:
Brew installer postgresql
Vous pouvez trouver le répertoire pg_config
en utilisant son homonyme:
$ pg_config --bindir
/usr/lib/postgresql/9.1/bin
$
Testé sur Mac et Debian. La seule ride est que je ne vois pas comment trouver le bindir pour différentes versions de postgres installées sur la même machine. C'est assez facile à deviner cependant! :-)
Remarque: j'ai mis à jour mon pg_config à 9,5 sur Debian avec:
sudo apt-get install postgresql-server-dev-9.5
Vérifier /Bibliothèque/PostgreSQL/9.3/bin et vous devriez trouver pg_config
I. E. /Library/PostgreSQL/<version_num>/
Ps: vous pouvez faire ce qui suit si vous le jugez nécessaire pour vos besoins pg -
Créer un .profil dans votre ~ répertoire
export PG_HOME=/Library/PostgreSQL/9.3
export PATH=$PATH:$PG_HOME/bin
Vous pouvez maintenant utiliser les commandes psql
ou postgres
du terminal, et installer psycopg2 ou toute autre dépendance sans problème, de plus vous pouvez toujours simplement ls $PG_HOME/bin
quand vous avez envie de jeter un coup d'œil à votre pg_dir.
, j'ai utilisé :
export PATH=$PATH:/Library/PostgreSQL/9.6/bin
pip install psycopg2
Ont le même problème sur mac, vous avez probablement besoin de
Brew installer postgresql
Ensuite, vous pouvez exécuter
Pip installer psycopg2
Le brew corrigera le problème de chemin pour vous
Cette solution fonctionne pour moi au moins.