2011-10-03 65 views
3

我想在cygwin中安装psycopg2,但还没有成功。 错误是: -在cygwin中安装psycopg2时出错

[email protected] ~/FieldAgentWeb/FieldAgentWeb 
$ easy_install psycopg2 
Searching for psycopg2 
Reading http://pypi.python.org/simple/psycopg2/ 
Reading http://initd.org/psycopg/ 
Reading http://initd.org/projects/psycopg2 
Best match: psycopg2 2.4.2 
Downloading http://initd.org/psycopg/tarballs/PSYCOPG-2-4/psycopg2-2.4.2.tar.gz 
Processing psycopg2-2.4.2.tar.gz 
Running psycopg2-2.4.2/setup.py -q bdist_egg --dist-dir /tmp/easy_install-QBYpxH 
/psycopg2-2.4.2/egg-dist-tmp-gcLa5F 
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'. 
error: Directory not empty <built-in function rmdir> /tmp/easy_install-QBYpxH/ps 
ycopg2-2.4.2/tests 

后,我一直想把d pg_config文件,但无法找到它在网络上。

回答

3

pg_config是PostgreSQL安装的一部分。它位于本地安装的bin目录中(例如C:\ Program Files(x86)\ PostgreSQL \ 9.0 \ bin)。将该目录添加到您的搜索路径并尝试再次构建。

+0

您的解决方案运行,当有人使用直接安装的PostgreSQL将在d情况很有帮助。但是我用django使用POSTgreSQL(已经安装在django中)。因此在我的c盘中没有这样的目录(例如C:\ Program Files(x86)\ PostgreSQL \ 9.0 \ bin)。 – himanshu

+0

我刚刚下载了官方的django发行版,它*不包含PostgreSQL,网上的一切都表示你应该单独下载并安装它。在任何情况下...如果PostgreSQL与您的django副本一起安装,只需在您的django安装目录中查找pg_config即可。 – Pablo

+0

巴勃罗其实是正确的。为了能够安装psycopg2 ***,您需要单独安装PostgreSQL ***(除了PostgreSQL *是正确的大写字母)。 Django不带数据库驱动程序,更不用说数据库了。 – cwallenpoole

8

我刚刚设法安装psycopg2而不安装Windows PostgreSQL(在我的情况下,db已经安装在另一台服务器上,我只需要连接到一个依赖于psycopg2的python包,因此完整安装它对我来说没有必要)。

pg_config executable not found,从Cygwin的安装我安装PostgreSQL的-devel的的libpq-dev的(这些应该是必要的,因为我还安装了记录相对向PostgreSQL如PostgreSQL很多其他包-client,postgresql-plpython和libpq5)。

之后,我能成功地pip install psycopg2

+0

我刚刚用cygwin/babun和pact安装进行了测试。 'libpq-devel'就是其中之一。 'postgresql-devel'不需要。 – juanitogan

+0

在安装postgresql-devel和libpq-devel之后,我在Cygwin中找不到pg_config问题,它现在出现了!谢谢。 –

+0

我试图安装'pgcli'软件包,但是它在构建'psycopg2'的轮子上失败。安装您提到的软件包后,它已正确安装。现在我运行'pgcli'时出现其他错误,但这是不同的故事... – Wirone