python easy_install fails with “assembler for architecture ppc not installed” on Mac OS X

后端 未结 4 1455
慢半拍i
慢半拍i 2020-12-07 10:09
bash-3.2$ sudo easy_install appscript  
Password:  
Searching for appscript  
Reading http://pypi.python.org/simple/appscript/  
Reading http://appscript.sourceforge         


        
相关标签:
4条回答
  • 2020-12-07 10:37

    I found another solution here which solves the problem once and for all. It turns out XCode4 still has the ppc assembler. You just need a symlink to it in the right place:

    $ 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
    

    Fixed the problem for me with XCode4 installed on Snow Leopard.

    EDIT: I tried other solutions, which worked in some cases, but invariably encountered a package that hardcoded the PPC requirement somewhere. Providing the PPC assembler got rid of all these problems once and for all.

    0 讨论(0)
  • 2020-12-07 10:39

    Using the system Pythons on Mac OS X 10.6, you'll need to have the gcc-4.2 from the Apple Xcode Developer Tools installed to build extension modules, like with Appscript. Other products may need the Xcode gcc-4.0 so you should install them both. They co-exist just fine.

    0 讨论(0)
  • 2020-12-07 10:43

    For me, the key was the ppc assembler, not the ARCHFLAGS stuff. But, the suggestion above didn't work; I didn't have the files in those locations. But with some tinkering and poking around, I found that I did have the ppc assember at /usr/bin/as. I first tried sudo ln -s /usr/bin/as /usr/libexec/as/ppc/as, but that failed (something about could not fork process...??). So I ended up just doing sudo cp /usr/bin/as /usr/libexec/as/ppc/as, and that worked (I think I had to do some sudo mkdirs along that path, as well).

    0 讨论(0)
  • 2020-12-07 10:44

    This happened for me after having upgraded to XCode 4; I haven't had time to figure out what went wrong during the upgrade (or whether this is the intended behaviour), but the following workaround works for me:

    sudo env ARCHFLAGS="-arch i386" easy_install whatever
    

    The ARCHFLAGS trick works with setup.py as well:

    env ARCHFLAGS="-arch i386 -arch x86_64" python setup.py install
    
    0 讨论(0)
提交回复
热议问题