我正在尝试更新我的应用程序以使用 iPhone5,这需要确保它是为 armv7 和 armv7s 架构编译的。我已经更新了我的项目中的构建设置,并使用这些设置重新编译了所有静态链接的库。所以它现在编译和链接成功。
但是,在运行 iOS6 的设备 (iPad) 上运行它(当然只支持 armv7 架构)时,我会立即使用以下输出崩溃:
dyld: vm_protect(0x00001000, 0x003BB000, false, 0x07) failed, result=2 for segment __TEXT in /var/mobile/Applications/....[name/location of my app]....
我也在跟踪窗口中得到了这个:
dyld`dyld_fatal_error:
0x2fe400c4: trap
0x2fe400c8: nop
我没有 iPhone5 来测试二进制文件的 armv7s 部分。当然,在发布到野外之前,我会在真实设备上对其进行测试,但同时我希望能够使用我当前运行 iOS6 的 armv7 iPad/iPhone 继续工作。我正在使用最近发布的 Xcode 4.5。
那么,任何人都知道发生了什么,或者可能有同样的问题?