當我嘗試通過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