代码之家  ›  专栏  ›  技术社区  ›  codebox

在OSX上编译Intel和PPC CPU

  •  0
  • codebox  · 技术社区  · 16 年前

    我有一台带有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体系结构工作的二进制文件,如果有,我应该使用什么选项?

    3 回复  |  直到 16 年前
        1
  •  2
  •   mmmmmm    16 年前

    查看gcc的-arch参数 Apple docs

        2
  •  2
  •   Tim Ebenezer    16 年前

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

        3
  •  1
  •   Ned Deily    16 年前

    为了避免你自己和你的用户将来的麻烦,你应该咬紧牙关,在苹果的网站上建立你的项目 Xcode . 如果遵循默认值, Xcode -arch 使用正确的 SDK