3

Xcode4 似乎不再将 PPC 作为构建选项包含在内。将 setup.py 用于包含 C 扩展的模块时,setup.py 总是尝试使用以下选项进行构建:

gcc-4.2 ... -DMACOSX -arch i386 -arch ppc ...

这失败并显示错误消息

/usr/libexec/gcc/powerpc-apple-darwin10/4.2.1/as: assembler (/usr/bin/../libexec/gcc/darwin/ppc/as or /usr/bin/../local/libexec/gcc/darwin/ppc/as) for architecture ppc not installed
Installed assemblers are:
/usr/bin/../libexec/gcc/darwin/x86_64/as for architecture x86_64
/usr/bin/../libexec/gcc/darwin/i386/as for architecture i386

如果我只是从失败的命令中删除 -arch ppc ,它会很好地完成,我可以重新运行setup.py build以继续下一步。

这对于只包含一个 C 扩展(如 ssl)的模块来说是可以的,但对于像 PIL 这样构建大量扩展的模块来说,这是一个很大的痛苦。

有什么方法可以防止 setup.py 在编译参数中包含 -arch ppc 吗?

4

1 回答 1

2

或者,修复有关 ppc 汇编器的 Xcode 4 安装。

$ sudo ln -s /Developer/Platforms/iPhoneOS.platform/Developer/usr/libexec/gcc/darwin/ppc /Developer/usr/libexec/gcc/darwin
$ sudo ln -s /Developer/Platforms/iPhoneOS.platform/Developer/usr/libexec/gcc/darwin/ppc /usr/libexec/gcc/darwin
于 2011-05-09T01:01:38.193 回答