我正在尝试针对 cygwin 或 mingw 构建 PIL 1.1.6,同时针对 Windows 安装的 python 运行。当我执行任一构建工作时,但在尝试保存文件时出现以下失败。
$蟒蛇25
Python 2.5.2 (r252:60911, Feb 21 2008, 13:11:45) [MSC v.1310 32 bit (Intel)] on
win32
输入“帮助”、“版权”、“信用”或“许可”以获取更多信息。
>>> 从 PIL.Image 导入打开
>>> im = open('test.gif')
>>> im.save('output1.gif')
回溯(最近一次通话最后):
文件“”,第 1 行,在
文件“c:\Python25\Lib\site-packages\PIL\Image.py”,第 1405 行,保存
save_handler(self, fp, 文件名)
_save 中的文件“c:\Python25\Lib\site-packages\PIL\GifImagePlugin.py”,第 291 行
ImageFile._save(imOut, fp, [("gif", (0,0)+im.size, 0, rawmode)])
_save 中的文件“c:\Python25\Lib\site-packages\PIL\ImageFile.py”,第 491 行
s = e.encode_to_file(fh, bufsize)
IOError:[Errno 0] 错误
>>>
我没有使用支持 jpeg 或 zip 的库进行编译,但我认为这在这里不应该相关。
失败的行似乎是在 encode.c 中的 encode_to_file 中写入。
我怀疑发生这种情况是因为文件描述符正在从 Python(在 Visual Studio 2003 下构建)传递到 _imaging.pyd 但文件描述符不匹配,因为在 Windows 上,文件描述符是和抽象之上的操作系统。有人对这个有了解吗?