Back

Comment corriger 'pg_config executable not found' lors de l'installation de psycopg2

Comment corriger 'pg_config executable not found' lors de l'installation de psycopg2

Si vous avez essayé d’installer le package Python psycopg2 pour vous connecter à des bases de données PostgreSQL, vous avez peut-être rencontré la frustrante erreur pg_config executable not found. Ce guide explique ce qui cause cette erreur et fournit des étapes claires pour la résoudre sur différents systèmes d’exploitation.

Points clés

  • L’erreur pg_config executable not found se produit lors de l’installation de packages Python comme psycopg2 qui nécessitent PostgreSQL
  • Assurez-vous que PostgreSQL est installé et que pg_config se trouve dans le PATH du système
  • Installez les bibliothèques de développement et les en-têtes PostgreSQL pour votre système d’exploitation
  • Envisagez d’utiliser psycopg2-binary pour le développement/test afin d’éviter de compiler à partir du code source

Qu’est-ce que l’erreur “pg_config executable not found” ?

L’outil pg_config fournit des informations sur la version installée de PostgreSQL. De nombreux packages comme psycopg2 s’appuient sur pg_config pendant l’installation pour localiser les fichiers et bibliothèques PostgreSQL nécessaires. Si pg_config ne peut pas être trouvé, l’installation échoue avec une erreur comme :

Error: pg_config executable not found.

Causes courantes de l’erreur “pg_config executable not found”

Il y a quelques raisons principales pour lesquelles vous pouvez voir cette erreur :

  1. PostgreSQL n’est pas installé
  2. L’exécutable pg_config n’est pas dans le PATH du système
  3. Les bibliothèques de développement et les en-têtes PostgreSQL requis sont manquants

Voyons comment résoudre chacun de ces problèmes.

Comment corriger l’erreur “pg_config executable not found”

1. Installer PostgreSQL

Tout d’abord, assurez-vous que PostgreSQL est installé sur votre système. Vous pouvez télécharger l’installateur approprié pour votre système d’exploitation sur le site web officiel de PostgreSQL.

2. Localiser pg_config et l’ajouter au PATH

L’exécutable pg_config est inclus avec PostgreSQL, mais peut ne pas être dans le PATH du système. Trouvez l’emplacement de pg_config et ajoutez son répertoire au PATH :

Linux

Emplacements courants :

  • /usr/pgsql-<version>/bin/pg_config
  • /usr/local/pgsql/bin/pg_config

Ajouter au PATH :

export PATH=$PATH:/chemin/vers/répertoire/pg_config

macOS

Emplacement courant (Postgres.app) :

  • /Applications/Postgres.app/Contents/Versions/latest/bin/pg_config

Ajouter au PATH :

export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/latest/bin

Windows

Emplacement courant :

  • C:\Program Files\PostgreSQL\<version>\bin\pg_config.exe

Ajouter au PATH :

setx PATH "%PATH%;C:\chemin\vers\répertoire\pg_config"

3. Installer les bibliothèques de développement PostgreSQL

Pour compiler psycopg2, vous avez besoin des bibliothèques de développement et des en-têtes PostgreSQL. Installez-les en utilisant le gestionnaire de packages de votre système :

Linux

  • Ubuntu/Debian : sudo apt install libpq-dev
  • CentOS/RHEL : sudo yum install postgresql-devel

macOS

Installer avec Homebrew :

brew install postgresql

Windows

Les bibliothèques sont incluses dans l’installateur PostgreSQL du site web officiel.

Installer psycopg2

Avec PostgreSQL installé et pg_config dans le PATH, vous pouvez maintenant installer psycopg2 :

pip install psycopg2

Si vous préférez éviter de compiler à partir du code source, vous pouvez installer le package pré-compilé psycopg2-binary à la place :

pip install psycopg2-binary

Cependant, notez que psycopg2-binary est recommandé uniquement pour le développement et les tests, pas pour la production.

FAQ

Oui, `psycopg2-binary` fournit des packages wheel pré-compilés qui ne nécessitent pas de compiler à partir du code source. Cependant, l'équipe `psycopg2` recommande d'utiliser la distribution source pour les environnements de production.

Oui, `psycopg2` est un adaptateur PostgreSQL pour Python. Il nécessite une installation PostgreSQL pour fonctionner correctement, même si votre application Python se connecte à une base de données PostgreSQL distante.

Conclusion

En suivant les étapes décrites ici, vous devriez être en mesure de résoudre l’erreur pg_config executable not found et d’installer avec succès psycopg2 pour commencer à utiliser PostgreSQL dans vos projets Python.

Listen to your bugs 🧘, with OpenReplay

See how users use your app and resolve issues fast.
Loved by thousands of developers