Xcode 8中的位码错误,但仅适用于模拟器

问题描述:

我刚刚更新到Xcode 8,并且每次尝试使用模拟器时都会收到一个新错误。 (模拟器中的任何设备类型。)它读取像这样...Xcode 8中的位码错误,但仅适用于模拟器

'[...]/AppDelegate.o' does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

诀窍是,位代码启用。 (当然,因为我正在做苹果手表的东西。)我也看到了其他的问题,但是在我的版本中有一些新的皱纹,它们没有解决:

  1. 这不是一些外部库或东西,它是我的AppDelegate。
  2. Bitcode IS已启用,并且一直用于此项目的整个开发周期(9个月以上)。
  3. 该项目适用于物理设备,“通用iOS设备”和归档。只有模拟器弹出这个错误。

我的假设是,这是一个错误或某种错误的设置,在我的构建规则中我如何在模拟器上构建,但我不知道那会是什么。我已经清理,删除了派生数据,尝试了多个模拟器,并重新启动了Xcode和我的电脑。

任何人都知道是什么原因造成这种情况,以及我如何解决它?

+0

您是否尝试删除派生数据并清理项目? –

+0

@DejanSkledar在问题中这么说,是的。 ;)但是,感谢您的快速回复! – Nerrolken

我不知道这是否会解决它,但在我们的项目中,通过Watch Extension,我们已经在应用程序目标上禁用了Bitcode,并在其他目标上启用了Enabled。

而在主应用程序目标上,我们将有效架构设置为armv7/s arm64。

我希望这会有所帮助。