架构 i386 的未定义符号:“_OBJC_CLASS_$_TLFApplicationHelper”

Posted

技术标签:

【中文标题】架构 i386 的未定义符号:“_OBJC_CLASS_$_TLFApplicationHelper”【英文标题】:Undefined symbols for architecture i386:"_OBJC_CLASS_$_TLFApplicationHelper" 【发布时间】:2015-07-06 09:13:09 【问题描述】:

我正在开发 xCode 6.3。我在我的应用程序上附加了外部库。我研究这个问题很久了。我尝试了整个解决方案。但他们没有帮助。更改方案名称、删除路径、添加/删除架构...我收到此错误:

Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_TLFApplicationHelper", referenced from:
      objc-class-ref in AppDelegate.o
  "_OBJC_CLASS_$_TLFCustomEvent", referenced from:
      objc-class-ref in AppDelegate.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我的设置:

有效架构:armv7 armv7s arm64 架构:armv7 arm64 构建活动架构:否

顺便说一句,没有 TLFApplicationHelper.m 和 TLFCustomEvent.m。它们是 TLFCustomEvent.h 和 TLFApplicationHelper.h。

当我将 Build Active Architecture Only 设置为 No 时,错误消息是这样的:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_TLFApplicationHelper", referenced from:
      objc-class-ref in AppDelegate.o
  "_OBJC_CLASS_$_TLFCustomEvent", referenced from:
      objc-class-ref in AppDelegate.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

【问题讨论】:

试过这个***.com/questions/22328882/… 您添加的库不支持 iPhone 模拟器。尝试在真实设备上运行它。 您确定在项目中添加了库文件并确保“TLFApplicationHelper”支持i386架构吗?如果它不支持 i386 请尝试使用设备。 我不使用 CocoaPods。我知道这个库支持 iphone Simulator。它支持 i386 和 x86_64。我认为我们错过了一些不同的东西。但我不知道它是什么。 【参考方案1】:

只是猜测,可能是您缺少链接库所需的一些框架。 您应该将它们作为依赖项添加到 podspec 中,或者在主项目中链接框架。

【讨论】:

我查过了。缺少链接库所需的框架。这让我发疯了。非常感谢。

以上是关于架构 i386 的未定义符号:“_OBJC_CLASS_$_TLFApplicationHelper”的主要内容,如果未能解决你的问题,请参考以下文章

架构 i386 的未定义符号:“_SCNetworkReachabilitySetCallback”

架构 i386 的未定义符号 - Lipo 错误?

“架构 i386 的未定义符号”问题

架构 i386 的未定义符号:_FlutterMethodNotImplemented

架构 i386 的未定义符号:用于 OpenCV 项目

架构 i386 的未定义符号:“_OBJC_CLASS_$_RCTBundleURLProvider”