0

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

我是否可以使用 gcc 生成适用于所有各种 Mac 架构的二进制文件,如果可以,我应该使用哪些选项?

4

3 回答 3

2

查看 gcc Apple 文档的 -arch 参数

于 2009-12-03T16:24:45.010 回答
2

您需要查看“通用二进制文件”,这是一个应用程序文件的名称,该文件在 ppc 和 i386 架构上运行,无需动态重新编译。如您所知,.app 文件(Mac 可执行文件)实际上是存档,其中包含实际的二进制应用程序。这些可以通过包含 i386 和 ppc 二进制文件的方式进行分区。

于 2009-12-03T16:28:08.400 回答
1

为了避免您和您的用户未来的头痛,您应该硬着头皮在 Apple 的Xcode. 如果您遵循默认设置,Xcode则可以处理构建多个体系结构的所有细节,例如-arch为 gcc 使用正确的标志、使用正确的SDK库、与以前的 OS X 版本的兼容性等。

于 2009-12-03T17:35:58.497 回答