为Anaconda Python安装psycopg2

use*_*459 4 python python-2.7 psql anaconda

我有Anaconda Python 3.4,但每当我运行旧代码时,我会通过输入"source activate python2"切换到Anaconda Python 2.7.我的问题是我为Anaconda Python 3.4安装了psycopg2,但是没有为Anaconda Python 2.7安装.当我运行pip install psycopg2(在Python 2.7上)时,我收到以下消息:

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'.
Run Code Online (Sandbox Code Playgroud)

我对编程很新,需要帮助:

1. Obtaining directory containing pg_config
2. Finding the path to Anaconda Python 2.7 
3. Adding pg_config to the PATH.
Run Code Online (Sandbox Code Playgroud)

完成这些步骤后,我应该能够安装安装psycopg2

Phi*_*per 8

如果你有蟒蛇,你可以回避一些令人头痛的问题.

你说你有Anaconda的python发行版,快速查看包含的软件包显示psycopg2已经存在(虽然不在安装程序中).你可以简单地说:

source activate python2
conda install psycopg2
Run Code Online (Sandbox Code Playgroud)

这允许conda安装程序管理所有二进制依赖项.也使升级更容易.

如果这不起作用或有理由不喜欢该软件包(版本问题?)那么这是一个不同的问题.


Elm*_*lmo 3

您需要 PostgreSQL 的开发系统包,其中包含编译 psycopg2 扩展所需的头文件。对于我的 CentOS 64 位,安装命令是:

yum install postgresql-devel.x86_64
Run Code Online (Sandbox Code Playgroud)

但这取决于操作系统 - 对于 Ubuntu 来说apt-get install ...- 软件包的名称在发行版之间略有不同。
执行此操作后,步骤 2 和 3 就不再需要了。

编辑:对于 Mac 操作系统,这只是:

brew install postgresql
Run Code Online (Sandbox Code Playgroud)

这里所写