【问题标题】:FIRApp Linker Error ["_OBJC_CLASS_$_FIRApp"]FIRApp 链接器错误 ["_OBJC_CLASS_$_FIRApp"]
【发布时间】:2016-06-03 00:48:52
【问题描述】:

我已经搜索过 SO 和 Google,但找不到有效的答案。我在多个项目中使用了新的 Firebase Cocoapod,但现在,将其添加到不同的项目时,我收到以下错误。

我正在使用 Xcode 7.3.1 和 cocoapods 1.0.1。

这是我的 podfile:

非常感谢任何帮助!

【问题讨论】:

  • 您是否尝试过清理构建目录(选择产品>清理时按住选项)?如果这个项目也使用旧的 cocoapods,那么pod deintegrate 然后pod update 可能也值得。
  • @IanBarber 我试过pod deintegrate 并没有运气清理项目。最后,我通过下载 SDK 并将框架手动添加到项目中来构建项目。我只是好奇你是否知道为什么这可以代替 cocoapods?这是一个相对较旧的项目,已经在 App Store 上架了一年多。也许在构建设置中有一些东西不能很好地与新的 cocoapods 配合使用?无论如何,感谢您的帮助!
  • 您找到解决此问题的方法了吗?坚持这个...
  • 我不记得确切的时间了,我想我不得不从回购中撤回它并承担损失。尝试保存您所做的一切,并尝试将其与 repo 中的干净版本集成,然后添加 Firebase。
  • 您找到解决此问题的方法了吗?如果您解决了这个问题,请帮我解决同样的问题?

标签: ios swift firebase cocoapods linker-errors


【解决方案1】:

转到Build Settings > Other Linker Flags > 换行$(inherited)

执行Cmd+Ctrl+K 进行清理,然后构建。

【讨论】:

  • 我没明白。什么新线路?调试呢,发布子项目。你可以添加截图只是为了清楚吗?谢谢!
  • 不幸的是,这似乎不再起作用(Xcode beta 9.3),并且 CocoaPods 默认放入 $(inherited)。仍在尝试找出 2018 年的解决方案
  • @Max 也不适合我,向项目中手动添加框架解决了我的问题
  • 我通过将依赖项从 Firebase/Messaging 更改为 FirebaseMessaging 来让它工作
  • @Max 哪个“依赖”?也不适合我。但是你具体做了什么?
【解决方案2】:

取消注释此行以为您的项目定义一个全球平台

平台:ios,'9.0'

target 'AppName' do # 如果您不使用 Swift 并且不想使用动态框架,请评论此行 inhibitor_all_warnings!使用_frameworks!

FCM 的 Pod

pod 'Firebase' pod 'Firebase/Core' pod 'Firebase/Messaging'

结束

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-09-18
    • 1970-01-01
    • 1970-01-01
    • 2016-09-17
    • 2021-06-10
    • 2012-04-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多