编译64/32位iOS

时间:2014-01-09 20:23:49

标签: ios xcode compiler-construction 64-bit

我正在尝试编译64位和32位。我按照Apple过渡指南中的说明进行操作:

https://developer.apple.com/library/ios/documentation/General/Conceptual/CocoaTouch64BitGuide/ConvertingYourAppto64-Bit/ConvertingYourAppto64-Bit.html#//apple_ref/doc/uid/TP40013501-CH3-SW1

并更改了我的架构设置。如果我将Build Active Architecture Only更改为Yes,则会收到错误消息,指出架构不可用。它设置为下面的设置,它在64位iPhone模拟器中成功编译,但当我使用下面的代码块检查它时,它说它仍然运行32位。

如何正确设置在64位设备上以64位运行,在32位设备上以32位运行?

#if __LP64__
    NSLog(@"64");
#else
    NSLog(@"32");
#endif

1 个答案:

答案 0 :(得分:2)

将“有效架构”设置为arm64,armv7和armv7s(以及用于模拟器的i386),你应该很高兴。

从您的屏幕截图看,“架构”已经正确设置(“标准架构”)。

如果我设置一个测试项目并删除那些NSLog行并在64位iPhone模拟器中运行它们,我会在Xcode控制台中看到“64”打印出来。