升级到Xcode 12后,我的项目不再为模拟器构建。
我得到的错误是:
ld: in ... /Pods/FirebaseAnalytics/Frameworks/FIRAnalyticsConnector.framework/FIRAnalyticsConnector(
FIRAnalyticsConnector_e321ed8e3db06efc9803f6c008e67a34.o),
building for iOS Simulator, but linking in object file built for iOS, file
'.../Pods/FirebaseAnalytics/Frameworks/FIRAnalyticsConnector.framework/FIRAnalyticsConnector'
for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
一个解决方案是将arm64
添加到我的项目〉构建设置〉排除的架构,但这样它就不会为我的真实设备构建。
我已经尝试清理构建文件夹、更新pod文件、重新启动等。
我正在使用:
- 火力基地/分析(6.33.0)
- xcode 12.0.1(12A7300)
- 可可豆:1.9.3
有什么想法吗?
9条答案
按热度按时间l7wslrjt1#
好的,我终于找到了这个问题的解决方法。
对于“发布”,将“仅构建活动体系结构”更改为“是”。
选择项目〉“构建设置”〉“目标”(您的目标)〉“体系结构”可以找到该设置
来源和更详细的解释可以在这里找到:
https://stackoverflow.com/a/64139830/4134160
请注意,这个问题与Firebase无关。我仍然离开它,因为它可能会导致其他人遇到这个问题,并帮助他们解决这个问题。
苹果硅
如果你用的是苹果的硅芯片,不妨考虑@白杨的回答:https://stackoverflow.com/a/65460729/4134160
i2byvkas2#
在为主项目和Pods项目添加了
arm64
到Excluded Architectures
之后,我能够解决我在Apple M1上遇到的这个问题。我还必须清除
DerivedData
文件夹并重新启动Xcode。有关详细信息,请参阅:https://medium.com/@khushwanttanwar/xcode-12-compilation-errors-while-running-with-ios-14-simulators-5731c91326e9
mlmc2os53#
我通过在Rosetta(Apple M1)下运行xcode 12修复了这个问题。
打开Finder -〉应用程序-〉定位Xcode -〉右键单击-〉获取信息-〉使用rosetta检查打开。
然后重新打开Xcode。
sr4lhrrt4#
我的情况有点不同。根据这个Firebase工程师的说法,
FIRAnalyticsConnector
现在是FirebaseAnalytics的xcframework版本的一部分,不需要链接。进入目标
Build Settings
(不是项目),搜索Other Linker Flags
,然后从列表中删除FIRAnalyticsConnector
,为我解决了这个问题。有趣的是,当我运行
pod deintegrate
和pod install
时,它并没有解决这个问题。3vpjnl9f5#
运行
pod install
后,在Xcode v12.4
中出现相同问题。在我的项目中进行了一些搜索之后,我终于在
Link Binary With Libraries
部分中的目标Build Phases
下找到了对它的引用。从列表中删除FIRAnalyticsConnector.framework
解决了我的问题。iyfamqjs6#
在我这边,按照这个链接https://github.com/firebase/firebase-ios-sdk/blob/CocoaPods-7.2.0/AppleSilicon.md的指示,解决它。
gopyfrb37#
从目标-〉“构建设置”-〉OTHER_LDFLAGS的列表中删除-framwork“FIRAnalyticsConnector”
ykejflvf8#
如果你在苹果硅胶上运行新的MacBook Pro M1处理器。这是一个已知的问题。
Firebase not compiling on Apple Silicone
7lrncoxx9#
我用Rosetta打开了Xcode。
步骤1 -安装
自制(推荐)
用法