Snow Leopard,Django& amp; PIL

时间:2009-09-09 10:05:14

标签: python django osx-snow-leopard python-imaging-library libjpeg

我在获取Django& amp时遇到一些麻烦升级到Snow Leopard后,PIL正常工作。

我已经安装了freetype,libjpeg和PIL,它告诉我:

--- TKINTER support ok
--- JPEG support ok
--- ZLIB (PNG/ZIP) support ok
--- FREETYPE2 support ok

但是当我尝试通过django管理界面上传jpeg时,我得到:

  

上传有效图片。你的文件   上传不是图像或   图像损坏。

它适用于PNG文件。

任何想法?

3 个答案:

答案 0 :(得分:14)

卡托

我对Leopard 10.5.x有相同的体验 以下是我为解决这个问题所做的工作(可能不适合你)。

  1. 转到PIL工作文件夹(解压缩PIL的位置) cd到您的构建文件夹 cd到你的lib.macosx-10。*文件夹(特定于你的操作系统) 删除* .so cd回到你的PIL构建文件夹 (我为此登录为su,但如果你愿意,你可以sudo这些)
  2. python setup.py clean
  3. python setup.py build
  4. python setup.py install
  5. 这会重建PIL干净。你的jpeg报告正常的原因是,它只是查找jpeg lib文件的存在,而不是从干净的构建和安装PIL发生的依赖。

    希望这可以解决您的问题,我的更可能与安装顺序有关,但也许会有所帮助......

答案 1 :(得分:5)

作为对Ken的回应的跟进,我在Snow Leopard 10.6.x中遇到了同样的问题,这是由于在libjpeg之前安装PIL引起的。安装libjpeg之后,我通过执行以下操作重新安装了PIL。

  1. cd到PIL工作文件夹
  2. python setup.py clean
  3. python setup.py build_ext -i< - 这将重建PIL
  4. python selftest.py - 运行selftest以确认PIL安装正常
  5. python setup.py install

答案 2 :(得分:3)

我在Ubuntu 8.04上遇到了类似的问题。我只需重新发布我的PIL安装(通过点子)就可以让自己摆脱它:

pip install PIL --upgrade

不确定问题是什么,但我怀疑它与其他人报告的相似。