支持armv6和armv7在同一个IPA

我有一个像这样configuration的XCode项目:

  • 项目格式:XCode 3.1兼容
  • 体系结构:标准(armv6 armv7)
  • 基础SDK:最新的iOS(目前设置为iOS 4.2)
  • 仅构build主动架构:未经检查
  • 有效的架构:armv6 armv7

我的问题:产生的二进制文件(.ipa)中是否有2个可执行文件 – 每个架构都有一个可执行文件,或者每个体系结构只有一些不同的目标文件,还是更细粒度的分割?

只是好奇。 谢谢。

从你所描述的,IPA应该有一个多体系结构二进制的arm6和arm7。 您可以使用terminal中的file命令来检查它。 应用程序包内部的可执行文件将与应用程序myApp.app/myApp具有相同的名称。 input:

 file myApp.app/myApp 

在terminal将打印它包含的内容,供您再次检查。 它应该列出2个架构。

它会产生两个二进制文件,然后把它们粘在一个所谓的“胖二进制”中。 您可以使用lipo命令来lipo在同一个可执行文件中粘贴多个体系结构。

澄清:你将在一个文件中有两个可执行文件。 这在逻辑上是一个单一的可执行文件(都是你的应用程序),但是一个版本的目标是一个体系结构,另一个版本的目标是另一个体系