2012-07-16 146 views
6

某些可能不應該導致我這麼多問題的東西是。在Ubuntu上安裝Python映像庫(PIL)

我想我的Ubuntu服務器上安裝PIL。它的安裝很好。但是,每次嘗試更新數據庫以添加圖像字段時,我都會收到以下錯誤:

錯誤:一個或多個模型未驗證: product.product:「image」:要使用ImageField,您需要安裝Python Imaging Library。獲取它在http://www.pythonware.com/products/pil/

我剛剛意識到我已經登錄爲我的用戶。我是否需要以root身份登錄才能安裝它?我在VPS而不是本地機器上做這件事。

我試着在網絡上的教程的負荷和不成氣候的。

+0

這是Django的'ImageField'嗎? – 2012-07-16 13:36:45

+1

如果您未以root身份登錄,似乎不太可能有權將模塊安裝到系統站點包中。如果你不被允許,你可能想要設置一個virtualenv並從那裏去 – 2012-07-16 13:39:05

+0

Thankyou ..我已經爲我的網站設置了virtualenv。我最初安裝它在virtualenv(但我認爲它安裝到主系統)。我會如何將它安裝到virtualenv? – JDavies 2012-07-16 13:44:18

回答

21

我必須安裝python-dev的再安裝PIL我的virtualenv內。

現在都在工作。

感謝您的幫助! :)

+0

首先,apt-get install libjpeg-dev libpng-dev獲得jpeg支持 – PhoebeB 2013-07-05 22:22:29

4

如果你不是根用戶,然後輸入以下命令應安裝python-成像:

sudo apt-get install python-imaging 

或者(如果是root),下面的命令(沒有sudo)將安裝python-成像

apt-get install python-imaging 
+0

感謝您的回覆。我已經嘗試了這兩個命令,這是我回來的消息: python-imaging已經是最新版本。 0升級,0新安裝,0刪除和33未升級。 – JDavies 2012-07-16 13:42:29

+0

這意味着你的系統中已經安裝了PIL;你不需要再安裝它 – 2012-07-16 13:50:56

0

理論上,應該使用一個virtualenvpip install pil那裏......如果你有機會和希望使用全系統包,那麼你就需要提升到root(須藤),以easy_installpip斯塔二。

確保你的服務器(Django的?)重新啓動,因此它可以拿起新庫。 (解釋器似乎並不總是在運行時拾取新安裝的模塊)。