我正在使用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 ...

当前回答

对于fedora用户:

Libpq-dev是依赖项之一,但是,在安装中应该这样命名这个包:libpq-devel

所以这应该解决了Fedora的问题:

sudo yum install libpq-devel

其他回答

我有这个问题,主要原因是安装了2个相同的版本。postgres写的。一个是HomeBrew的。

如果您选择只保留APP:

brew unlink postgresql
pip3 install psycopg2

在Mac Mavericks与Postgres。在安装Postgres后,我需要使用以下代码:

sudo PATH=$PATH:/Applications/Postgres.app/Contents/Versions/9.3/bin pip install psycopg2 . sudo PATH=$PATH:/Applications/Postgres.app/Contents/Versions/9.3/bin

我最近在一台windows计算机上配置了psycopg2。最简单的安装是使用windows可执行二进制文件。你可以在http://stickpeople.com/projects/python/win-psycopg/上找到它。

要在虚拟环境中安装本机二进制文件,请使用easy_install:

C:\virtualenv\Scripts\> activate.bat
(virtualenv) C:\virtualenv\Scripts\> easy_install psycopg2-2.5.win32-py2.7-pg9.2.4-release.exe

运行下面的命令应该没问题

$ apt-get update
$ apt install python3-dev libpq-dev
$ pip3 install psycopg2

注意:自从一段时间以前,在PyPI中有Windows的二进制轮,所以这对Windows用户来说应该不再是一个问题。下面是Linux和Mac用户的解决方案,因为他们中的许多人是通过网络搜索找到这篇文章的。


选项1

安装psycopg2-binary PyPI包,它有适用于Linux和Mac OS的Python轮。

pip install psycopg2-binary

选项2

安装从源代码构建psycopg2包的先决条件:

Debian/Ubuntu

Python 3

sudo apt install libpq-dev python3-dev

你可能需要安装python3.8-dev或类似的程序,例如Python 3.8。

Python 2

sudo apt install libpq-dev python-dev

如果这还不够,那就试试

sudo apt install build-essential

or

sudo apt install postgresql-server-dev-all

在再次安装psycopg2之前。

CentOS 6

请看班杰的回答

操作系统

请看nichochar的回答