gpt4 book ai didi

python - python PIL 中的_imaging C 模块错误

转载 作者:太空狗 更新时间:2023-10-29 21:19:02 27 4
gpt4 key购买 nike

我已经阅读了有关在 Mac OS X 上安装 PIL 时臭名昭著的 _imaging C 模块错误的其他帖子,但在任何地方提供的解决方案(包括 PIL 常见问题解答)都没有被证明有帮助。

我从源代码中全新安装了最新版本的 libjpeg 和 zlib。我已经编辑了其中每一个的 Makefile,以便在 32 位构建的 LD_FLAGS 变量中包含选项 -arch i386。 PIL 安装没有任何问题,打印到终端的安装摘要表明 JPEG、TIFF 和 PNG 支持都正常。之后我尝试自测:

new-host:Imaging-1.1.7 ely$ python selftest.py 
*** The _imaging C module is not installed

出于各种原因,这种情况很常见。深入探讨,这里我尝试直接在python中导入_imaging。

new-host:Imaging-1.1.7 ely$ python
ActivePython 2.7.1.4 (ActiveState Software Inc.) based on
Python 2.7.1 (r271:86832, Feb 7 2011, 11:33:10)
[GCC 4.2.1 (Apple Inc. build 5664)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import PIL
>>> import _imaging
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL/_imaging.so, 2): Symbol not found: _jpeg_resync_to_restart
Referenced from: /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL/_imaging.so
Expected in: dynamic lookup

再次强调,“未找到符号:_jpeg_resync_to_restart”是臭名昭著且常见的,许多人认为这与 libjpeg 的错误路径有关。我一次又一次地检查,我只在我的主目录中安装了 libjpeg(以及 zlib 等),所有这些都在单独的文件夹中,来自源代码,所有这些都在文件 setup.py 中正确标记。

因此,PIL 应该从正确的地方获得其 jpeg 支持(和 zlib 等)。所有依赖项都已安装。我可以在我的 sys.path 中看到 _imaging.so,但我仍然收到此 _jpeg_resync_to_restart 错误。

有没有不链接到其他帖子的想法?我花了大约 7 个小时阅读并尝试从我能找到的每个论坛的帖子中寻找可能的解决方案。

最佳答案

由于您已经尝试过几次,我建议先运行一些命令来清除旧项目并从头开始。

我在 Mac OS X、10.6 和 10.7 上使用了 jpeg v8c 和 Imaging 1.1.6

获取jpeg的v8ccd 进入 jpeg 目录。

sudo make clean
CC="gcc -arch i386" ./configure --enable-shared --enable-static
make
sudo make install

获取图像我正在使用 1.1.6

解压cd 进入成像

sudo rm -rf build
vi setup.py
JPEG_ROOT = libinclude(“/usr/local/lib”)
sudo python setup.py install

就这么简单

运行你的 python 解释器,

import PIL
import _imaging
import Image

如果一切顺利,那么一切就绪。

这是我博客上的完整文章 Python 2.7, OSX Lion, PIL and Imaging

关于python - python PIL 中的_imaging C 模块错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6149634/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com