使用PyDev的PIL模块
我刚开始学习Python和Google App Engine,但在安装和兼容性方面遇到了麻烦。我用的是Mac OS X和Eclipse Helios,并且安装了pyDev插件,但尽管如此,我还是遇到了错误……
每当我在终端中尝试导入PIL时,没有出现任何错误,这意味着它安装成功了。但是当我在Eclipse文件中使用相同的导入时,却出现了编译错误,错误信息是:
"Unresolved Import"
请帮帮我。
我试着修复这个问题,但它给我提示说:imaging:在通用包装器中没有匹配的架构。
当我把架构改成32位时,Eclipse日志中出现了这个信息:
Traceback (most recent call last):
File "/Users/Vinay/Documents/EclispeHeliosWorkspace/helloworld/Main.py", line 7, in <module>
im.show()
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL/Image.py", line 1483, in show
_show(self, title=title, command=command)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL/Image.py", line 2123, in _show
apply(_showxv, (image,), options)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL/Image.py", line 2127, in _showxv
apply(ImageShow.show, (image, title), options)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL/ImageShow.py", line 41, in show
if viewer.show(image, title=title, **options):
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL/ImageShow.py", line 66, in show
self.show_image(image, **options)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL/ImageShow.py", line 85, in show_image
return self.show_file(self.save_image(image), **options)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL/ImageShow.py", line 81, in save_image
return image._dump(format=self.get_format(image))
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL/Image.py", line 488, in _dump
self.load()
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL/ImageFile.py", line 164, in load
self.load_prepare()
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL/ImageFile.py", line 231, in load_prepare
self.im = Image.core.new(self.mode, self.size)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL/Image.py", line 37, in __getattr__
raise ImportError("The _imaging C module is not installed")
ImportError: The _imaging C module is not installed
我该怎么办 :( ?
2 个回答
0
我刚在 OS X 10.8.5 Mountain Lion 上安装了 Pillow(使用命令:sudo pip install Pillow),这样就可以在 Python 2.7.6 中使用 PIL 了。
我在 Eclipse Kepler 的 PyDev 中也遇到了同样的问题。要解决这个问题,按照以下步骤操作:
首先,打开:
Eclipse -> 偏好设置 -> PyDev -> 解释器 - Python -> 库,然后点击“新建文件夹”。
接着,找到:
/Library/Python/2.7/site-packages
然后点击打开,再点击应用,最后点击确定。
之后我退出了 Eclipse 并重新启动,问题就解决了。 :)
1
PIL的安装有一些特别的步骤。你看过这些步骤吗?
- 下载PIL的.dmg文件。比如,你可以从http://pythonmac.org/packages/py25-fat/index.html下载PIL 1.1.6的.dmg文件。
- 双击安装程序,开始安装。
- 选择正确的目录,然后完成安装。
这些步骤只是为了在你本地的开发环境中使用。当你上传的时候,会使用GAE提供的PIL版本,这意味着你还需要像这样更新你的app.yaml文件:
libraries:
- name: PIL
version: "1.1.7"
如果我没记错的话,你需要把它安装在你的应用程序目录里面,这样你的应用程序才能在本地访问。不过在MAC上我不太确定。