当我安装OS X 10.11时,为什么PIP安装OS X 10.12



尝试导入pil(使用枕头(时,我会收到以下错误:

    from PIL import ImageTk, Image
  File "/usr/local/lib/python2.7/site-packages/PIL/ImageTk.py", line 42, in <module>
    from . import Image
  File "/usr/local/lib/python2.7/site-packages/PIL/Image.py", line 60, in <module>
    from . import _imaging as core
ImportError: dlopen(/usr/local/lib/python2.7/site-packages/PIL/_imaging.so, 2): Symbol not found: _clock_gettime
  Referenced from: /usr/local/lib/python2.7/site-packages/PIL/.dylibs/liblzma.5.dylib (which was built for Mac OS X 10.12)
  Expected in: /usr/lib/libSystem.B.dylib
 in /usr/local/lib/python2.7/site-packages/PIL/.dylibs/liblzma.5.dylib

请注意该行Referenced from: /usr/local/lib/python2.7/site-packages/PIL/.dylibs/liblzma.5.dylib (which was built for Mac OS X 10.12),特别是'(是为Mac OS X 10.12构建的('。

我有一个直觉,当我尝试手动安装错误的Xcode版本时,我可能会破坏某些东西(与该计算机上的10.11.6不兼容(。我已经使用pip install Pillow安装了枕头 - 但是该安装导致了此错误。有没有办法强迫PIP安装特定版本的枕头,以查看问题是否在于安装有问题的版本的PIP?

这是最新枕头5.1.0版本中的错误。

它是由Xcode从版本8升级到9.2的,用于构建二进制轮毂。

el capitan 10.11是xcode 8的"最小MacOS"。

Sierra 10.12.6是Xcode 9.2的最小值。

https://en.wikipedia.org/wiki/xcode#xcode_7.0_---- 9.x (自_FREE_ON-DEVICE_DEVICE_DEVEVELS

将有一个枕头5.1.1在某个时候修复它。

与此同时,解决方法是:pip安装'枕头!= 5.1.0'

(或升级MacOS或从源构建。(

有关更多信息,请参见https://github.com/python-pillow/pillow/issues/3068

听起来像是上传到PYPI的车轮不是正确为您的平台构建的。不幸的是,为您的平台设有PYPI包装的轮子并不能保证轮子可以正确安装或工作,而是您在这方面的PIPPI套件维护器的摆布。

您应该运行pip uninstall Pillow,直接从PYPI下载源,手动构建并运行pip install -e <path to rebuilt package>以安装专门为计算机构建的轮子。

最新更新