我正在使用virtualenv,我需要安装“psycopg2”。

我做了以下几点:

pip install http://pypi.python.org/packages/source/p/psycopg2/psycopg2-2.4.tar.gz#md5=24f4368e2cfdc1a2b03282ddda814160

我有以下信息:

Downloading/unpacking http://pypi.python.org/packages/source/p/psycopg2/psycopg2
-2.4.tar.gz#md5=24f4368e2cfdc1a2b03282ddda814160
  Downloading psycopg2-2.4.tar.gz (607Kb): 607Kb downloaded
  Running setup.py egg_info for package from http://pypi.python.org/packages/sou
rce/p/psycopg2/psycopg2-2.4.tar.gz#md5=24f4368e2cfdc1a2b03282ddda814160
    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'.

----------------------------------------
Command python setup.py egg_info failed with error code 1
Storing complete log in C:\Documents and Settings\anlopes\Application Data\pip\p
ip.log

我的问题是,我只需要这样做来让psycopg2工作?

python setup.py build_ext --pg-config /path/to/pg_config build ...

当前回答

在CentOS上,你需要postgres开发包:

sudo yum install python-devel postgresql-devel

这至少是CentOS 6上的解决方案。

其他回答

在macOS Mojave上,请确保您在最新更新的命令行工具10.3 -这对我有用-用软件更新更新了它,Mojave上的命令行工具的以前版本对我不起作用。

在OSX上使用macports:

sudo port install postgresql96
export PATH=/opt/local/lib/postgresql96/bin:$PATH

OSX 10.11.6 (El Capitan)

brew install postgresql
PATH=$PATH:/Library/PostgreSQL/9.4/bin pip install psycopg2

在安装psycopg2之前,您需要安装python-dev包。

如果你在Linux(也可能是其他系统,但我没有经验)上工作,在安装开发包时,你需要确保你运行的python版本非常准确。

例如,当我使用命令:

sudo apt-get install python3-dev

我仍然遇到了同样的错误,当试图

pip install psycopg2

当我使用python 3.7时,我需要使用该命令

sudo apt-get install python3.7-dev

一旦我这样做了,我就没有遇到更多的问题。显然,如果你在python 3.5版本上,你会把7改成5。

我只在Python2中遇到过这个错误。我立即将虚拟环境升级到Python3.8,错误就不再存在了。