Ubuntu Django说所有图像都无效,但PIL可以工作
我在Ubuntu12.04上运行了一个新的Linode,使用Nginx、Gunicorn和Django 1.4。上载到imagefield(在本地工作)会声明文件已损坏或无效,包括本地工作的图像 PIL工作。我可以加载、检查和收集图像的各种属性 我也在使用virtualenv 有什么建议吗 更多信息:Ubuntu Django说所有图像都无效,但PIL可以工作,ubuntu,nginx,python-imaging-library,django-models,gunicorn,Ubuntu,Nginx,Python Imaging Library,Django Models,Gunicorn,我在Ubuntu12.04上运行了一个新的Linode,使用Nginx、Gunicorn和Django 1.4。上载到imagefield(在本地工作)会声明文件已损坏或无效,包括本地工作的图像 PIL工作。我可以加载、检查和收集图像的各种属性 我也在使用virtualenv 有什么建议吗 更多信息: -------------------------------------------------------------------- PIL 1.1.7 SETUP SUMMARY -----
--------------------------------------------------------------------
PIL 1.1.7 SETUP SUMMARY
--------------------------------------------------------------------
version 1.1.7
platform linux2 2.7.3 (default, Apr 20 2012, 22:44:07)
[GCC 4.6.3]
--------------------------------------------------------------------
*** TKINTER support not available
*** JPEG support not available
*** ZLIB (PNG/ZIP) support not available
*** FREETYPE2 support not available
*** LITTLECMS support not available
--------------------------------------------------------------------
这是pip install PIL结束时的输出。问题是,为什么不提供任何支持?使用以下方法解决:
出于存档目的,该帖子的副本: 以下技术应适用于32位和64位系统 安装生成依赖项:
sudo apt get build dep python imaging
符号链接库:
sudo ln -s /usr/lib/`uname -i`-linux-gnu/libfreetype.so /usr/lib/
sudo ln -s /usr/lib/`uname -i`-linux-gnu/libjpeg.so /usr/lib/
sudo ln -s /usr/lib/`uname -i`-linux-gnu/libz.so /usr/lib/
安装:
pip install PIL
在它构建之后,您应该会看到如下内容:
--------------------------------------------------------------------
PIL 1.1.7 SETUP SUMMARY
--------------------------------------------------------------------
version 1.1.7
platform linux2 2.7.3 (default, Apr 10 2012, 22:21:37)
[GCC 4.6.3]
--------------------------------------------------------------------
--- TKINTER support available
--- JPEG support available
--- ZLIB (PNG/ZIP) support available
--- FREETYPE2 support available
*** LITTLECMS support not available
--------------------------------------------------------------------
这是对我有效的解决方案
sudo apt-get install libjpeg62-dev zlib1g-dev libfreetype6-dev
cd ~/.virtualenvs/{env-name}
ln -s /usr/lib/i386-linux-gnu/libz.so ./lib/
ln -s /usr/lib/i386-linux-gnu/libjpeg.so ./lib/
ln -s /usr/lib/i386-linux-gnu/libfreetype.so ./lib/
ln -s /usr/lib/x86_64-linux-gnu/libz.so ./lib/
ln -s /usr/lib/x86_64-linux-gnu/libjpeg.so ./lib/
ln -s /usr/lib/x86_64-linux-gnu/libfreetype.so ./lib/
pip install PIL