没有为Xcode 6.1编译的架构

时间:2014-12-01 14:08:55

标签: ios xcode

我正在运行xcode 6.1

我正在将最初定位到4.3的项目升级到最新的iOS和SDK。当我在模拟器上运行时,它可以在低于iPhone 5S的所有模拟器上编译,它适用于iPhone4,4S,iphone5(7& 8)。但是当我选择设备iPhone 5S和iPhone 6时,我收到错误:没有要编译的架构(ONLY_ACTIVE_ARCH = YES,活动arch = x86_64,VALID_ARCHS = i386)。

设定:

enter image description here

enter image description here

3 个答案:

答案 0 :(得分:7)

您的有效架构应为armvv7, armv7s, arm64 否则你不允许(至少)arm64。 你也不需要在debug&和发布时相同

答案 1 :(得分:0)

我建议您执行以下操作:

  1. 删除对有效体系结构的本地修改,使其返回默认值。
  2. 删除对体系结构的本地修改,使其返回默认值。
  3. 确保您的部署目标至少为6.0。将其设置为早于6.0的版本将不允许您支持64位。
  4. 默认架构值将仅显示手臂拱。您不需要包含i386和x86_64。在构建SIM卡时,Xcode负责将您的手臂拱转换为适当的英特尔拱门。例如,如果你在有效的拱门或拱门中有armv6,armv7或armv7s,那么在为sim建造时,它将在内部翻译成i386。

答案 2 :(得分:0)

我不得不从项目文件中手动删除覆盖的VALID_ARCH设置,以使其构建模拟器。无论出于何种原因,如果你在目标级别覆盖它们,它不起作用(至少对我来说)并且你不能在Xcode中删除它们,因为它用空替换它们而不是从项目设置继承它们。