将 Firebase 与 Google Toolbox for Mac 一起使用时出现未定义符号 Xcode 错误
Posted
技术标签:
【中文标题】将 Firebase 与 Google Toolbox for Mac 一起使用时出现未定义符号 Xcode 错误【英文标题】:Undefined symbols Xcode error when using Firebase with Google Toolbox for Mac 【发布时间】:2017-02-23 21:56:43 【问题描述】:我有一个 ios 项目,它使用 Firebase 和 Google Toolbox for Mac,它们是通过 Pod 添加的。我的 Podfile 如下:
target 'MyApp' do
pod 'GoogleToolboxForMac', '~> 2.1'
pod 'GTMSessionFetcher', '~> 1.1'
pod 'Firebase/Core'
pod 'Firebase/Auth'
pod 'Firebase/Database'
pod 'Firebase/Messaging'
end
当我在 Xcode 中构建项目时,出现此错误:
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_GTMLogger", referenced from:
objc-class-ref in FirebaseMessaging(GIPReachability_ae5504e4a6a28a1d8997c6f38e8bff8b.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
谁能给点建议?从其他类似的问题来看,我可能需要在Linked Frameworks and Libraries
中导入一个框架。我为 Firebase 消息添加了 UserNotifications.framework
,但不确定我还需要什么...?
【问题讨论】:
【参考方案1】:看来您需要将another Cocoapod 添加到您的Podfile
:
target 'MyApp' do
pod 'GoogleToolboxForMac', '~> 2.1'
pod 'GTMSessionFetcher', '~> 1.1' # version 1.1 & newer up to - but not including - 2.0
pod 'gtm-logger', '>= 0.0.5' # version 0.0.5 or newer
pod 'Firebase/Core'
pod 'Firebase/Auth'
pod 'Firebase/Database'
pod 'Firebase/Messaging'
end
然后运行pod update
【讨论】:
以上是关于将 Firebase 与 Google Toolbox for Mac 一起使用时出现未定义符号 Xcode 错误的主要内容,如果未能解决你的问题,请参考以下文章
将 Google Play 游戏与 Firebase 混合使用
将 android studio 项目与 Firebase 集成以实现 google 登录功能时出现依赖错误
将 google firebase 分析与 iOS 操作扩展一起使用