当我尝试通过PIP进行安装,或者easy_install的,它给我的错误:如何在virtualenv中安装pygresql?
OSError: [Errno 2] No such file or directory: '/usr/include/pgsql/server'
我应该如何正确地做到这一点?
当我尝试通过PIP进行安装,或者easy_install的,它给我的错误:如何在virtualenv中安装pygresql?
OSError: [Errno 2] No such file or directory: '/usr/include/pgsql/server'
我应该如何正确地做到这一点?
您没有PostgreSQL服务器包含文件,或者它们没有位于系统上的预期路径。有关PyGreSQL编译的更多细节,请参阅PyGreSQL Installation。
例如,在Ubuntu上,您需要安装postgresql-server-dev-all包才能拥有服务器包含文件。在Fedora上,它是postgresql-devel。
通常,pip将使用pg_config为这些文件找到正确的路径。
$ pg_config --includedir-server
/usr/include/postgresql/9.1/server
根据你的错误,pg_config返回'/usr/include/pgsql/server'
作为服务器的头文件的位置,但他们没有被安装在系统上。
您需要安装包的构建依赖关系。
在操作系统Debian的baseds,这将是:
sudo apt-get build-dep psycopg2
您还应该安装build-essentials
包(如果尚未安装)。然后您可以继续进行virtualenv安装。
pygresql在系统上安装并正常工作,我只是不能让它在virtualenv上工作。我应该做一些符号链接,但不知道在哪里。 – Euphorbium
你的配置是什么?你有没有尝试启动'pg_config --includedir-server'? – math
它给了我相同的路径,'/ usr/include/pgsql/server' – Euphorbium