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

当前回答

这对我来说是有效的(关于RHEL, CentOS:

sudo yum install postgresql postgresql-devel python-devel

现在在你的pip install中包含你的postgresql二进制目录的路径:

sudo PATH=$PATH:/usr/pgsql-9.3/bin/ pip install psycopg2

确保包含正确的路径。就这些。

更新:对于python3,请安装python3-devel而不是python-devel

其他回答

如果你使用Mac操作系统,你应该从源代码安装PostgreSQL。 安装完成后,需要添加该路径,使用:

export PATH=/local/pgsql/bin:$PATH

或者你可以像这样追加路径:

export PATH=.../:usr/local/pgsql/bin

在你的。profile文件或。zshrc文件中。

这可能因操作系统而异。

您可以从http://www.thegeekstuff.com/2009/04/linux-postgresql-install-and-configure-from-source/上跟随安装过程

在windows XP上,如果postgres没有安装,你会得到这个错误…

在Arch基础分布中:

sudo pacman -S python-psycopg2
pip2 install psycopg2  # Use pip or pip3 to python3

Psycopg2依赖于Postgres库。 在Ubuntu上你可以使用:

apt-get install libpq-dev

然后:

pip install psycopg2

我已经为此奋斗了几天,终于弄清楚如何在Windows的virtualenv中运行“pip install psycopg2”命令(运行Cygwin)。

我碰到了“pg_config可执行文件未找到”错误,但我已经在Windows中下载并安装了postgres。它也安装在Cygwin;在Cygwin中运行"which pg_config"会给出"/usr/bin/pg_config",并且运行"pg_config"会给出正常的输出——然而安装在Cygwin中的版本是:

VERSION = PostgreSQL 8.2.11

这不适用于当前版本的psycopg2,该版本似乎至少需要9.1。当我将“c:\Program Files\PostgreSQL\9.2\bin”添加到我的Windows路径中时,Cygwin pip安装程序能够找到正确的PostgreSQL版本,并且我能够成功地使用pip安装模块。(这可能比使用Cygwin版本的PostgreSQL更好,因为原生版本会运行得更快)。