python安装psycopg2报错’Error: pg_config executable not found‘

Posted Sajor_

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python安装psycopg2报错’Error: pg_config executable not found‘相关的知识,希望对你有一定的参考价值。

在使用 pip install psycopg2 命令安装时,报了以下错误。

Looking in indexes: http://mirrors.aliyun.com/pypi/simple/
Collecting psycopg2
  Downloading http://mirrors.aliyun.com/pypi/packages/23/7e/93c325482c328619870b6cd09370f6dbe1148283daca65115cd63642e60f/psycopg2-2.8.2.tar.gz (368kB)
     |████████████████████████████████| 368kB 13.1MB/s 
    ERROR: Complete output from command python setup.py egg_info:
    ERROR: running egg_info
    creating pip-egg-info/psycopg2.egg-info
    writing pip-egg-info/psycopg2.egg-info/PKG-INFO
    writing dependency_links to pip-egg-info/psycopg2.egg-info/dependency_links.txt
    writing top-level names to pip-egg-info/psycopg2.egg-info/top_level.txt
    writing manifest file 'pip-egg-info/psycopg2.egg-info/SOURCES.txt'
    
    Error: pg_config executable not found.
    
    pg_config is required to build psycopg2 from source.  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'.
    
    If you prefer to avoid building psycopg2 from source, please install the PyPI
    'psycopg2-binary' package instead.
    
    For further information please check the 'doc/src/install.rst' file (also at
    <http://initd.org/psycopg/docs/install.html>).
    
    ----------------------------------------
ERROR: Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-install-nomas_kt/psycopg2/

在查阅了许多中文文档后,不是说安装二进制版 psycopg-binary ,就是要求在本地安装postgresql数据库,就很麻烦,且很扯。

在查看了官方文档之后,文章明确提到了 psycopg-binary 和 psycopg 的区别,以及安装需要的依赖包

psycopg vs psycopg-binary

psycopg-binary软件包旨在让初学者开始使用Python和PostgreSQL,而无需满足构建要求。

如果您是依赖于psycopg2的已发布包的维护者,则不应将psycopg2二进制文件用作模块依赖项。对于生产使用,建议您使用源分发。

依赖项

  • gcc
  • python3-devel
  • libpq-dev(pg_config在这个包里)

所以针对找不到pg_config,应该首先安装 libpq-dev ,而不是曲线救国去安装 psycopg-binary

ubuntu

 

apt install libpq-dev

centos

 

yum install libpq-devel.x86_64

macOS

 

最后再安装

pip install psycopg2

python安装postgresql驱动

使用 psycopg2 连接 postgresql
下载 psycopg2
解压安装,或者是使用pip 安装
报错:
 
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‘.
解决:
yum install postgresql-devel*

以上是关于python安装psycopg2报错’Error: pg_config executable not found‘的主要内容,如果未能解决你的问题,请参考以下文章

在 Windows 上安装 psycopg2 时出错

python安装postgresql驱动

ubuntu上跑python连接pg,报错 ImportError: No module named psycopg2

Django 在执行 python manage.py runserver-“raise ImproperlyConfigured("Error loading psycopg2 modul

如何在 kali-linux 上安装 psycopg2?

安装 psycopg2 osx 10.12 python 3.5.2 - psycopg2 的构建轮失败