【问题标题】:Undefined symbols for architecture armv6架构 armv6 的未定义符号
【发布时间】:2012-08-28 03:20:05
【问题描述】:

我的应用程序在运行 iOS 5.0 的 iPhone 模拟器上编译良好,但在运行 iOS 4.2.1 的旧物理 iPod touch 上编译失败。

我收到以下错误:

Undefined symbols for architecture armv6:
  "_OBJC_CLASS_$_TestFlight", referenced from:
      objc-class-ref in AppDelegate.o
ld: symbol(s) not found for architecture armv6

我查看了有关此的其他问题: Undefined symbols for architecture armv6, Updating to iOS 4.3

但他们的解决方案不起作用。确实,TestFlight.h 不在 Compile sources 中,但是将其拖到 Compile Sources 并没有改变错误消息。 (没有TestFlight.m;我在“Link Binary with Libraries”中有libTestFlight.a

同样,在 AppDelegate.m 中删除并重新键入 #import "TestFlight.h" 并没有改变任何内容。

还有什么可能导致我的 iPod 上出现此编译错误?

【问题讨论】:

标签: iphone ios armv6


【解决方案1】:

首先,.h 文件不是源文件,因此请再次将其从“编译源”中删除。

关于错误 - 您可能正在使用不支持 armv6 的 TestFlight SDK 版本 - 他们在最近的版本中重新启用了此架构。更新到最新版本的 SDK,看看是否有帮助。

【讨论】:

    【解决方案2】:

    点击你的项目,选择

    目标

    然后转到

    构建阶段

    编译源代码

    添加了 AppDelegate.m,它可能没有连接,编译器找不到该文件。 另见link

    【讨论】:

      猜你喜欢
      • 2011-07-21
      • 1970-01-01
      • 2011-12-18
      • 2013-01-27
      • 2014-08-07
      • 2013-10-13
      • 2011-09-19
      • 2012-07-20
      • 2011-08-14
      相关资源
      最近更新 更多