2009-12-03 55 views
0

我有一个64位Intel Core 2 Duo处理器的MacBook Pro,我使用gcc(i686-apple-darwin9-gcc-4.0.1)来编译可执行文件我可以在自己的机器上运行。最近有人试图在PowerBook G4上运行我的应用程序,并得到'坏CPU类型的可执行'错误,我认为这是因为他们的CPU是PPC而不是Intel(也可能是32位不是64位)为OSX上的Intel和PPC CPU编译

是我有可能制作能够在所有Mac架构上使用gcc的二进制文件,如果有的话,我可以使用哪些选项?

回答

2

你需要寻找到“通用二进制代码”,这是给它运行,没有动态重新编译,两个PPC和i386架构的应用程序文件的名称。正如你所知道的.app文件(Mac可执行文件)实际上是存档,其中包含实际的二进制应用程序。这些可以以包含i386和ppc二进制文件的方式进行分区。

1

为了节省您自己和您的用户未来的麻烦,您应该咬紧牙关,在苹果的Xcode中设置您的项目。如果你遵循默认值,Xcode可以照顾所有建筑物的多个体系结构的细节,比如使用正确的-arch gcc标志,使用正确的SDK库,与以前的OS X版本的兼容性等。