0

可能重复:
如何在 Mac OS X 10.8 / Xcode 4.4 上使用/安装 gcc

由于以下错误,我无法使用easy_insallor安装任何 Python 包。pip我到处寻找,看到了这个错误的几种变体,但还没有找到易于理解/遵循的解决方案。任何帮助深表感谢!

我在 Mac OS 10.8.1 上运行

Python 版本 2.7.3

Xcode 4.5.2 版(安装了命令行工具)

...如果您需要更多信息来找出问题所在,请询问!

$ easy_install pil
Searching for pil
Reading http://pypi.python.org/simple/pil/
Reading http://www.pythonware.com/products/pil
Reading http://effbot.org/zone/pil-changes-115.htm
Reading http://effbot.org/downloads/#Imaging
Best match: PIL 1.1.7
Downloading http://effbot.org/media/downloads/PIL-1.1.7.tar.gz
Processing PIL-1.1.7.tar.gz
Writing /var/folders/9q/bvqtzkbx1hg1934b36zgk0y40000gn/T/easy_install-wfZs_Y/PIL-1.1.7/setup.cfg
Running PIL-1.1.7/setup.py -q bdist_egg --dist-dir /var/folders/9q/bvqtzkbx1hg1934b36zgk0y40000gn/T/easy_install-wfZs_Y/PIL-1.1.7/egg-dist-tmp-DXWOmC
WARNING: '' not a valid package name; please use only.-separated package names in setup.py
--- using frameworks at /System/Library/Frameworks
unable to execute gcc-4.0: No such file or directory
error: Setup script exited with error: command 'gcc-4.0' failed with exit status 1

不确定这是否有帮助,但是当我运行时sudo port select --list gcc,我得到以下信息:

Available versions for gcc:
    llvm-gcc42
    mp-gcc45
    none (active)
4

1 回答 1

0

这只是一个猜测,基于您必须安装 MacPorts(或者sudo port select --list gcc只会给您一个port: command not found错误)的事实,但我怀疑您已经安装了 MacPorts Python 2.7.3,并且您正在尝试为此安装 PIL .

如果你想将包添加到 MacPorts Python 安装中,你应该首先检查是否有它的端口,如果有,使用它:

port search pil

在这种情况下,您会发现有一个py27-pil. 安装那个。

同时,当这不适用时,您几乎应该总是使用pip代替easy_install(有一些例外,特别是readline),并且您需要确保您的路径设置正确,以便您运行您认为的路径,或者您最终可能会使用 Apple python 运行为 MacPorts python 设置的脚本。

但是,我还怀疑您为早期版本的 OS X 安装了过期的 MacPorts 安装,并且在升级到 Mountain Lion 时没有遵循升级说明。如果这是真的,唯一合适的解决方法是获取已安装端口的列表sudo rm -rf /opt/local,运行最新的 MacPorts 安装程序,然后运行sudo port install所有以前安装的端口。

最重要的是,上次我使用 MacPorts Python(这是很久以前的事了,所以它可能不是最新信息),它没有安装东西/Library(IIRC,它设置/opt/local/Library为一个额外的库目录),这意味着您实际上至少安装了三个Python 2.7:Apple 的(in/System/Library/usr)、MacPorts(in /opt/local)和其他一些版本(in/Library和可能),当您打算使用第三个时/usr/local,您正在使用第二个。easy_install

如果你不知道如何处理这种多份相同的疯狂,而且你没有非常非常好的理由邀请它,正确的答案是不要安装这些其他 Python(并卸载您已有的任何 Python)。你真的需要 MacPorts python 吗?你可以只使用内置的 Python 吗?如果不是,为什么不呢?你至少可以使用 python.org Python 吗?

如果您不想解决任何基本问题,并且您真的想将东西安装到 MacPorts Python 中,并且希望您拥有 gcc-4.0,那么您也许可以安装 macportsgcc4.0端口,尽管您可能必须骗人相信那macports-gcc-4.0是真的gcc-4.0。(可能有一种方法可以用 MacPorts 正确地做到这一点;如果没有,符号链接可能会起作用。)但这可能是个坏主意,如果你回来时说“这似乎有效,但后来我在重建东西的 348 分钟内遇到了另一个错误”,没有人能帮助你。

于 2012-12-06T23:50:55.267 回答