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?

53
demandé sur Community 2014-01-13 00:20:43

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.

81
répondu elynch 2016-06-16 15:35:49

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.

24
répondu Daniil Ryzhkov 2015-04-14 08:11:09
sudo find / -name "pg_config" -print

La réponse est /Library / PostgreSQL/9.1/bin / pg_config dans ma configuration (MAC Maverick)

24
répondu user1953296 2017-03-23 19:30:51

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

16
répondu cpres 2014-11-05 18:32:22

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
11
répondu Afrowave 2016-02-05 16:13:27

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é.

7
répondu jkdev 2015-10-28 18:52:06

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

5
répondu romainm 2016-02-27 11:47:05

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
2
répondu Max Murphy 2016-05-12 16:22:51

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.

1
répondu codesage 2015-11-18 06:44:56

, j'ai utilisé :

export PATH=$PATH:/Library/PostgreSQL/9.6/bin

pip install psycopg2
1
répondu Deepika Anand 2016-10-08 01:19:24

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.

0
répondu zoe_stockholm 2017-03-14 12:02:06