2012-10-04 25 views
50

我想爲我的django項目設置一個PostgreSQL數據庫,我相信我現在已經完成了對我最後一個問題Problems setting up a postgreSQL database for a django project的答覆。我現在想運行在終端的命令「蟒蛇manage.py runserver命令讓我的本地主機了,但是當我運行的命令,我看到這個回覆...錯誤:沒有名爲psycopg2.extensions的模塊

Error: No module named psycopg2.extensions 

我不知道這是什麼的意思 - 我試圖下載psycopg2,但似乎無法找到使用自制軟件下載psycopg2的方法。我已經嘗試easy_install,點安裝和sudo但所有返回錯誤是這樣的...

Downloading http://www.psycopg.org/psycopg/tarballs/PSYCOPG-2-4/psycopg2-2.4.5.tar.gz 
Processing psycopg2-2.4.5.tar.gz 
Writing /tmp/easy_install-l7Qi62/psycopg2-2.4.5/setup.cfg 
Running psycopg2-2.4.5/setup.py -q bdist_egg --dist-dir /tmp/easy_install-l7Qi62/psycopg2-2.4.5/egg-dist-tmp-PBP5Ds 
no previously-included directories found matching 'doc/src/_build' 
unable to execute gcc-4.0: No such file or directory 
error: Setup script exited with error: command 'gcc-4.0' failed with exit status 1 

如何解決這個問題?

+0

您沒有安裝編譯器,您需要一個編譯psycopg2軟件包。如果您可以提供有關您的操作系統的詳細信息,那麼此處的人員可能會幫助您。 –

+0

@IanClelland謝謝伊恩。我在Mac OS X 10.6.8上。如果有幫助,我已經安裝了自制軟件。 – Jess

回答

0

我使用的擴展只進口psycopg2後:

import psycopg2 

... 

psycopg2.extensions.AsIs(anap[i]) 
+0

@f p感謝您的回覆。你是如何導入psycopg2的?你用過自制軟件嗎?我試過在終端上運行'import psycopg2'命令,但它返回'ImportError:No module named psycopg2'。 – Jess

+0

我正在使用Ubuntu的地方準備安裝而無需編譯..顯示的例子是在Python中。要在Windows中安裝,請查看http:// stickpeople。com/projects/python/win-psycopg /你想要的是先安裝它。 –

+0

@f p謝謝。我在Mac上 - 是否有類似的mac解決方案? – Jess

1

看來你需要gcc-4.0,這將有助於指定操作系統類型和版本。

也許這個問題會幫助你一點:Installing GCC to Mac OS X Leopard without installing Xcode

更新

我是Windows用戶,所以我不能測試您的設置,但快速谷歌指出了一些更多的鏈接:

+0

謝謝。我已經下載並安裝了GCC 10.6,因爲我的操作系統是10.6.8。然後我跑的easy_install psycopg2,但它返回這個錯誤... 「沒有發現先前列入目錄匹配‘DOC/src目錄/ _build’ 無法執行GCC-4.0:沒有這樣的文件或目錄 錯誤:安裝程序腳本錯誤退出:命令'gcc-4.0'失敗,退出狀態爲1「。你知道這可能是爲什麼嗎? – Jess

5

先安裝apt-get install python-setuptools

然後嘗試easy_install psycopg2

114

的首先要做的是安裝依賴關係。

sudo apt-get build-dep python-psycopg2 

之後去你的virtualenv內使用

pip install psycopg2 

這兩個命令就可以解決這個問題。

+0

這qorks相當不錯,但它不會是建議使用PIP安裝,我個人會建議'easy_install'它一點點更可靠,但番茄番茄! ] – Pogrindis

+7

我必須說,我永遠不會再使用別的比點子,其所以更漂亮:-) – Harry

+7

對於Python 3,使用'sudo apt-get的建設-DEP python3-psycopg2' – laike9m

0

檢查,如果你已經安裝了psycopg2如果不是

sudo apt-get install psycopg2 

安裝的依賴關係。

sudo apt-get build-dep python-psycopg2 

這兩個命令應該可以解決這個問題。

4

這是什麼幫助我在Ubuntu上,如果你的Python安裝從Ubuntu安裝程序。我這樣做後不成功嘗試 '的apt-get安裝' 和 '畫中畫安裝':

在終端:

sudo synaptic 

然後在突觸searchfield寫

psycopg2 

選擇

python-psycopg2 

使用鼠標右鍵單擊並將'apply'標記爲安裝。當然,如果你沒有安裝突觸,那麼首先要做:

sudo apt-get install synaptic 
4

我成功地使用這些命令安裝:

sudo apt-get install libpq-dev python-dev 
pip install psycopg2 
1

在蟒蛇3.4,而在虛擬環境中,確保你有編譯依賴第一:

sudo apt-get build-dep python3-psycopg2 

然後再進行安裝:

pip install psycopg2 
1

我在運行Mavericks(10.9)的Mac上試圖運行pip2 install psycopg2時遇到了No module named psycopg2.extensions錯誤。我不認爲我的堆棧跟蹤包括關於GCC的消息,而且還包括一個提示:

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'. 

我找了pg_config文件在我的Postgres的安裝,並添加它包含我的路徑的文件夾:/Applications/Postgres.app/Contents/Versions/9.4/bin。你的路徑可能會有所不同,特別是如果你有不同版本的Postgres安裝 - 我只會戳到你找到bin/文件夾。這樣做後,安裝工作。

1

試試這個:
須藤PIP安裝-i https://testpypi.python.org/pypi psycopg2 == 2.7b2
..如果你在AWS EC2實例運行到雞蛋錯誤

如果碰上GCC這是特別有用錯誤;試試這個
1須藤yum的安裝gcc的python-setuptools的蟒蛇-devel的PostgreSQL的-devel的
2須藤蘇 -
3.須藤PIP安裝psycopg2

1

對於Django 2python 3使用pip3安裝psycopg2

pip3 install psycopg2 
相關問題