在Mac OS X上使用python easy_install时出现“未安装ppc架构的汇编器”错误
bash-3.2$ sudo easy_install appscript
Password:
Searching for appscript
Reading http://pypi.python.org/simple/appscript/
Reading http://appscript.sourceforge.net
Best match: appscript 1.0.0
Downloading http://pypi.python.org/packages/source/a/appscript/appscript-1.0.0.tar.gz#md5=6619b637037ea0f391f45870c13ae38a
Processing appscript-1.0.0.tar.gz
Running appscript-1.0.0/setup.py -q bdist_egg --dist-dir /tmp/easy_install-C4d1az/appscript-1.0.0/egg-dist-tmp-yVTHww
/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
我对这些东西还真是个菜鸟(我学过一点Python和Unix,但从来没有处理过安装的问题。)之前我遇到了一个错误,说找不到gcc-4.2,然后我看到一些帖子建议重新安装XCode。我选择了4.0(这是个糟糕的选择吗?),现在我又遇到了新的问题。我现在完全不知道该怎么办。
4 个回答
1
对我来说,关键在于ppc汇编器,而不是ARCHFLAGS那些东西。不过,上面提到的建议并没有奏效;我在那些位置找不到文件。但是经过一些折腾和探索,我发现我确实在/usr/bin/as
找到了ppc汇编器。我首先尝试了sudo ln -s /usr/bin/as /usr/libexec/as/ppc/as
,但失败了(好像是说无法创建进程...??)。所以我最后选择直接用sudo cp /usr/bin/as /usr/libexec/as/ppc/as
,这样就成功了(我想我还得在那个路径上做一些sudo mkdir
的操作)。
15
我找到了一种新的解决办法,详细内容可以在这里查看,这个办法可以彻底解决这个问题。原来XCode4里还是有ppc汇编器的。你只需要在正确的位置创建一个符号链接就可以了:
$ 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
这个方法在我安装了XCode4的Snow Leopard系统上解决了我的问题。
补充说明:我尝试了其他一些解决方案,这些方案在某些情况下有效,但总是会遇到某个地方硬编码了PPC的要求。提供ppc汇编器彻底解决了所有这些问题。
77
我在升级到XCode 4后遇到了这个问题;我还没时间搞清楚在升级过程中出了什么问题(或者这是否是正常现象),不过下面这个解决办法对我有效:
sudo env ARCHFLAGS="-arch i386" easy_install whatever
这个ARCHFLAGS
的小技巧在setup.py
中也能用:
env ARCHFLAGS="-arch i386 -arch x86_64" python setup.py install