【发布时间】:2010-12-31 15:11:27
【问题描述】:
我目前正在编写一个Cocoa 应用程序,它需要执行一些针对 32 位和 64 位优化的(控制台)应用程序。因此,我想检测应用程序运行的 CPU 架构,以便启动正确的控制台应用程序。
简而言之:我如何检测应用程序是否在 64 位操作系统上运行?
编辑:我知道Mach-O 胖二进制文件,这不是我的问题。我需要知道这一点,这样我才能启动另一个非捆绑(控制台)应用程序。一种针对x86 优化,另一种针对x64。
【问题讨论】:
-
即使您没有源代码,您也可以合并已有的两个二进制文件。请记住,胖二进制文件适用于非捆绑控制台二进制文件!照 cgkanchi 的建议去做,
lipo -create -arch i386 bin32 -arch x86_64 bin64 -output bin_universal。 -
我已经这样做了。像魅力一样工作。
标签: objective-c macos 32bit-64bit cpu-architecture