在Mac OS X 10.9之后无法安装PIL

Vin*_*ert 132 python macos pip python-imaging-library osx-mavericks

我刚刚将我的Mac OS更新到10.9,我发现我的Python模块中的一些(全部?)不再存在,尤其是Image one.

所以我尝试执行sudo pip install pil,但是我收到了这个错误:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/tk.h:78:11: fatal error: 'X11/Xlib.h' file not found

#      include <X11/Xlib.h>

               ^

1 error generated.

error: command 'cc' failed with exit status 1
Run Code Online (Sandbox Code Playgroud)

我的Xcode是最新的,我不知道.PIL有可能还不兼容10.9吗?

Dmi*_*nko 211

以下为我工作:

ln -s  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers/X11 /usr/local/include/X11
sudo pip install pil
Run Code Online (Sandbox Code Playgroud)

更新:

但Will提供了更多正确的解决方案.

打开你的终端并执行: xcode-select --install

  • 建议的命令会显示Apple的错误对话框.首先,它询问我是否要获取XCode(我有)或"安装".我选择安装.它会弹出一个EULA,我接受,然后出现一个错误对话框:"无法安装该软件,因为它目前无法从软件更新服务器获得." (26认同)
  • 我遇到了一个错误`下载/拆包pil无法找到满足要求的任何下载某些外部托管文件被忽略(使用--allow-external pil允许).正在清理...没有找到发布的发行版在/ Users/Usermania/.pip/pip.log中存储失败的调试日志 (7认同)
  • 如果您还想要一个支持zlib/png/zip的PIL/Pillow,您还需要:`ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10. 9.sdk/usr/include/zlib.h/usr/local/include /` (3认同)
  • 你的答案有一个错字,它是'MacOS10.9.sdk`而不是'MacOS0.9.sdk`. (2认同)

小智 102

打开你的终端并执行:

xcode-select --install

  • 这也解决了这个问题(它安装了默认情况下没有安装Xcode的命令行工具). (5认同)
  • 问题不是关于安装Xcode而是PIL ...而且,我解释说我已经安装了Xcode并且是最新的. (2认同)

小智 34

sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers/X11/ /usr/local/include/X11
Run Code Online (Sandbox Code Playgroud)

对我有帮助!os x 10.9

pip install pillow
Run Code Online (Sandbox Code Playgroud)

但!pip安装后......

*** ZLIB (PNG/ZIP) support not available
Run Code Online (Sandbox Code Playgroud)

最后我通过运行来修复它:

xcode-select --install
Run Code Online (Sandbox Code Playgroud)

然后重新安装枕头

pip install pillow

PIL SETUP SUMMARY
    --------------------------------------------------------------------
    version      Pillow 2.2.1
    platform     darwin 2.7.5 (default, Aug 25 2013, 00:04:04)
                 [GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)]
    --------------------------------------------------------------------
    --- TKINTER support available
    --- JPEG support available
    --- ZLIB (PNG/ZIP) support available
    --- TIFF G3/G4 (experimental) support available
    --- FREETYPE2 support available
    --- LITTLECMS support available
    --- WEBP support available
    --- WEBPMUX support available
    --------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)


小智 14

适合我(OS X Yosemite 10.10.2 - Python 2.7.9):

xcode-select --install
sudo pip install pillow
Run Code Online (Sandbox Code Playgroud)

试试看它:

from PIL import Image
image = Image.open("file.jpg")
image.show()
Run Code Online (Sandbox Code Playgroud)


rad*_*tek 11

这是我做的,有些步骤可能不仅仅是PIL,但我需要libpng和其他人:

1)运行xcode install,使用此命令或从应用商店下载更新:

xcode-select --install
Run Code Online (Sandbox Code Playgroud)

1b)添加命令行工具可选工具,在Mountain Lion中这是xcode下载页面上的一个选项,但现在您必须注册您的苹果ID并从以下网址下载:https://developer.apple.com/downloads/

寻找Xcode的命令行工具(OS X Mavericks)

2)安装python所需的一切(使用brew),我相信你也可以使用端口:

brew install readline sqlite gdbm
brew install python --universal --framework 
brew install libpng jpeg freetype
Run Code Online (Sandbox Code Playgroud)

如果需要,取消链接/重新链接,即升级.

3)安装Pip和所需的模块:

easy_install pip 
sudo pip install setuptools --no-use-wheel --upgrade
Run Code Online (Sandbox Code Playgroud)

4)最后这没有错误:

sudo pip install Pillow
Run Code Online (Sandbox Code Playgroud)

更新 11/04/14:PIL回购不再接收更新或支持,因此应使用Pillow.以下现已弃用,所以坚持使用枕头.

sudo pip install pil --allow-external pil --allow-unverified pil
Run Code Online (Sandbox Code Playgroud)

更新(旧):安装Pillow(PIL fork)同样适用,应该提及它在大多数PIL情况下迅速成为替代品.而不是在步骤4中安装pip,而是运行它:

sudo pip install Pillow
Run Code Online (Sandbox Code Playgroud)

希望这有助于某人!


小智 9

安装命令行工具为我解决了这个问题

你必须单独安装它们,因为它们现在不属于xcode中的软件包:

https://developer.apple.com/downloads/index.action?=command%20line%20tools#


小智 8

没有那些为我工作..我一直收到:

clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future]
clang: note: this will be a hard error (cannot be downgraded to a warning) in the future
error: command 'cc' failed with exit status 1
Run Code Online (Sandbox Code Playgroud)

所以我找到了解决以下解决方案的方法:

sudo export CFLAGS=-Qunused-arguments
sudo export CPPFLAGS=-Qunused-arguments
sudo pip install PIL --allow-external PIL --allow-unverified PIL
Run Code Online (Sandbox Code Playgroud)

这样我就能安装了.


小智 6

我遇到了类似的问题:安装枕头失败clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future],安装命令行工具失败Can't install the software because it is not currently available from the Software Update server.,甚至在手动安装命令行工具后,PIL的编译失败.

发生这种情况导致最新版本的xcode下的clang不会对未知的编译器标志发出警告,而是以硬错误停止编译.

要解决这个问题,只需export ARCHFLAGS="-Wno-error=unused-command-line-argument-hard-error-in-future"在尝试编译之前在终端上运行(安装pil).


jqu*_*lls 5

简单地跑

pip install pil --allow-external pil --allow-unverified pil