在virtualenv中安装psycopg2(Ubuntu 10.04,Python 2.5)

时间:2010-10-02 21:07:25

标签: python virtualenv psycopg2

我在virtualenv中安装psycopg2时遇到了问题。

我尝试了不同的解释:http://www.saltycrane.com/blog/2009/07/using-psycopg2-virtualenv-ubuntu-jaunty/

我尝试的最后一件事是...... 我创建了一个带有-p python2.5 --no-site-packages的virtualenv 我安装了libpq-dev:apt-get install libpq-dev

在virtualenv中,我这样做了:easy_install -i http://downloads.egenix.com/python/index/ucs4/ egenix-mx-base

然后当我尝试pip install psycopg2==2.0.7时,我收到了这个错误:

Installing collected packages: psycopg2
Running setup.py install for psycopg2
building 'psycopg2._psycopg' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DPSYCOPG_DEFAULT_PYDATETIME=1 -DPSYCOPG_VERSION="2.2.2 (dt dec ext pq3)" -DPG_VERSION_HEX=0x080404 -DPSYCOPG_EXTENSIONS=1 -DPSYCOPG_NEW_BOOLEAN=1 -DHAVE_PQFREEMEM=1 -DHAVE_PQPROTOCOL3=1 -I/usr/include/python2.5 -I. -I/usr/include/postgresql -I/usr/include/postgresql/8.4/server -c psycopg/psycopgmodule.c -o build/temp.linux-i686-2.5/psycopg/psycopgmodule.o -Wdeclaration-after-statement
psycopg/psycopgmodule.c:27:20: error: Python.h: No such file or directory
In file included from psycopg/psycopgmodule.c:31:
./psycopg/python.h:31:26: error: structmember.h: No such file or directory
./psycopg/python.h:34:4: error: #error "psycopg requires Python >= 2.4"
In file included from psycopg/psycopgmodule.c:32:

有谁知道如何解决这个问题? 感谢。

1 个答案:

答案 0 :(得分:6)

来自python-list:

  

迭:   安装python-dev-package。它   包含Python.h文件,其中   上面的错误信息很清楚   说。通常,这是一个好主意   搜索包的描述   debian / ubuntu包丢失   头文件知道要安装什么。

     
    

帕斯卡:     它已经安装好了;至少为     Python 2.6,也不确定它是否正确     Python 2.5。 python2.5-dev不可用但是     python-old-doctools似乎取而代之。

         
      

迭:       它是100%正确的       的python2.5。如错误消息所示        - 它丢失了。       如果它在某个地方不可用,那么你       应该考虑构建python       你自己,如果你必须使用2.5。

             

亚历:       Ubuntu 10.04没有完整版       Python 2.5打包,如下所示       缺乏python2.5-dev。你需要       使用Python 2.6或绝对是       必须使用Python 2.5构建它       来源,尝试Debian软件包或交换机       发行。 python-old-doctools没有       替换python- dev,它看起来像       提出要保留一些乳胶工具       工作

             
        

Pascal:我终于创造了一个virtualenv         使用Python 2.6,一切都很顺利         (使用最新版本的psycopg2)。