ios – 在FirebaseCrashReporting中使用调试构建的未定义符号

ios – 在FirebaseCrashReporting中使用调试构建的未定义符号,第1张

概述自从通过 Cocoapods更新到Firebase崩溃报告3.8.0后,我在调试模式的构建期间看到以下错误.我能够在没有错误的情况下构建发布模式. Undefined symbols for architecture armv7: "_OBJC_CLASS_$_GTMLogNoFilter", referenced from: objc-class-ref in FirebaseC 自从通过 Cocoapods更新到Firebase崩溃报告3.8.0后,我在调试模式的构建期间看到以下错误.我能够在没有错误的情况下构建发布模式.

Undefined symbols for architecture armv7:  "_OBJC_CLASS_$_GTMLogNoFilter",referenced from:      objc-class-ref in FirebaseCrash(FCRSystemLogger_6532fb37dc095ffa73463b57baf5fca7.o)  "_OBJC_CLASS_$_GTMLogBasicFormatter",referenced from:      objc-class-ref in FirebaseCrash(FCRSystemLogger_6532fb37dc095ffa73463b57baf5fca7.o)  "_OBJC_CLASS_$_GTMLogger",referenced from:      objc-class-ref in FirebaseCrash(FCRSystemLogger_6532fb37dc095ffa73463b57baf5fca7.o)      objc-class-ref in FirebaseCrash(uploader_089041b840f448492d858d7daf481e47.o)ld: symbol(s) not found for architecture armv7clang: error: linker command Failed with exit code 1 (use -v to see invocation)
解决方法 当在调试模式下将XCode设置Build Active Architecture Only设置为NO时,会发生这种情况.

一些Firebase SDK依赖于从源构建的pod.默认情况下,CocoaPods在DeBUG中运行时为源构建的所有Pod设置Build Active Architecture Only.这种不匹配会导致您提到的缺失符号.

有两种方法可以解决此问题:

>在您的调试中将Switch Build Active Architecture仅限于YES
主要项目.
>在调试时(取自此post),将您的pod的Build Active Architecture仅设置为NO:

post_install do |installer_representation|  installer_representation.pods_project.targets.each do |target|    target.build_configurations.each do |config|      config.build_settings['ONLY_ACTIVE_ARCH'] = 'NO'    end  endend
总结

以上是内存溢出为你收集整理的ios – 在Firebase / CrashReporting中使用调试构建的未定义符号全部内容,希望文章能够帮你解决ios – 在Firebase / CrashReporting中使用调试构建的未定义符号所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1062783.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存