今天在centos中使用pip安裝PIL死活不成功,報錯:
Could not find a version that satisfies the requirement PIL (from versions: ) Some externally hosted files were ignored as access to them may be unreliable (use --allow-external PIL to allow). No matching distribution found for PIL
但是使用pip search PIL查找,源中確實有該包:
PIL - Python Imaging Library
google之,得到如下辦法(http://stackoverflow.com/questions/21242107/pip-install-pil-dont-install-into-virtualenv):
sudo pip install PIL --allow-external PIL --allow-unverified PIL
果然成功了。
但是程序運行時又報錯:
font = ImageFont.truetype(os.path.join("fonts",font_type), font_size)
ImportError: The _imagingft C module is not installed
似乎是沒有安裝truetype擴展之類的。那就安裝吧(http://stackoverflow.com/questions/4011705/python-the-imagingft-c-module-is-not-installed):
sudo yum install freetype-devel
然后卸載、重新安裝PIL
sudo pip uninstall PIL sudo pip install PIL --allow-external PIL --allow-unverified PIL
終於搞定了
PS:之前還嘗試過從官網下載PIL源碼自己編譯安裝:
(參照:http://www.cnblogs.com/free--coder/archive/2012/09/12/2681361.html)
1.下載源碼並解壓:
wget http://effbot.org/downloads/Imaging-1.1.7.tar.gz tar -xzvf Imaging-1.1.7.tar.gz
2.編譯安裝(注意要root權限):
python setup.py build python setup.py install
安裝倒是成功了,但是python腳本運行時報錯:
/usr/lib64/python2.7/site-packages/PIL/Image.py:81: RuntimeWarning: The _imaging extension was built for another version of Pillow or PIL
warnings.warn(str(v), RuntimeWarning)
Traceback (most recent call last):
File "captcha.py", line 3, in <module>
import Image, ImageDraw, ImageFont, ImageFilter
File "/usr/lib64/python2.7/site-packages/PIL/Image.py", line 65, in <module>
raise ImportError("The _imaging extension was built for another "
ImportError: The _imaging extension was built for another version of Pillow or PIL
似乎版本不對。。。。。
放棄了
