为 Xcode 项目创建单元测试会导致错误:显示最近的消息:-1:未定义符号:_OBJC_CLASS_$_FBSDKCodelessIndexer

Posted

技术标签:

【中文标题】为 Xcode 项目创建单元测试会导致错误:显示最近的消息:-1:未定义符号:_OBJC_CLASS_$_FBSDKCodelessIndexer【英文标题】:Creating unit tests for Xcode project results in error : Showing Recent Messages :-1: Undefined symbol: _OBJC_CLASS_$_FBSDKCodelessIndexer 【发布时间】:2019-05-28 03:01:51 【问题描述】:

将其添加到我的 pods 文件时(用于单元测试目的)

target 'MY_PROJECT_TITLE_Tests' do
inherit! :search_paths
pod 'Firebase'
end

编译时出现错误:

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

在上述 podfile 更改的“pod install”之前没有错误。为什么会这样/有解决办法吗?谢谢你。

【问题讨论】:

你在使用 facebook sdk 吗?因为FBSDKMarketingKit 是 facebook sdk 的类 【参考方案1】:

可能需要pod update

旧版本的 Firebase 和 FBSDK 之间可能不兼容,例如 How to fix build error with FBSDKLoginKit in Xcode

【讨论】:

以上是关于为 Xcode 项目创建单元测试会导致错误:显示最近的消息:-1:未定义符号:_OBJC_CLASS_$_FBSDKCodelessIndexer的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 9.4 未显示单元测试

SwiftUI Xcode项目新增单元测试(Unit Test)后预览(Preview)崩溃的解决

SwiftUI Xcode项目新增单元测试(Unit Test)后预览(Preview)崩溃的解决

删除 XCode 8 中的单元测试

为啥 iOS 自动布局会导致预 Retina 显示器出现明显的舍入错误(包括单元测试)

XCode 3.2.4 升级后进行逻辑测试的问题