xcode Apple M1芯片上的Firebase分析和其他模块

p8h8hvxi  于 2023-03-13  发布在  其他
关注(0)|答案(5)|浏览(165)

我在苹果M1 MacBook Pro上使用Xcode 12.3和Cocoapod 1.10.0的SwiftUI 2应用程序中的Firebase和SDWebImageSwiftUI模块。
只要我不通过Cocoapod集成Firebase Analytics模块,应用程序就可以正常工作,但当我集成它时,我会得到与此处相同的错误:Xcode 12,为iOS模拟器构建,但链接为iOS构建的目标文件,用于架构arm 64。他的解决方案也适用于我(排除项目和pod的arm 64架构)。
但是,现在SDWebImageSwiftUI模块(通过swift包管理器包含)报告“无法找到目标”x86_64-apple-ios-simulator“的模块”SDWebImageSwiftUI“;找到:arm 64,arm 64-apple-ios-simulator”。如果我通过Cocoapod包含该模块,则编译器会显示“没有这样的模块“SDWebImageSwiftUI”。
你们有谁知道我能做什么吗?
任何帮助都非常感谢

zbwhf8kr

zbwhf8kr1#

2023年3月-从Firebase 7.5.0开始,Firebase默认支持M1处理器,不需要特别说明。
当你在你的Podfile中指定你想要的Firebase版本时,在版本后面加上-M1。
明确要求特殊的M1标记的Firebase版本,锁定到确切的版本。注意,由于版本方案,您需要为每个版本手动更新此版本,否则您将恢复到正式版本(例如7.2.0而不是7.2.0-M1)。
pod“火力基地/分析”,“7.2-M1”
对使用的任何其他Firebase pod执行相同操作。
pod 'Firebase/数据库','7.2-M1'
请记住:现在您需要手动添加-ObjC以避免运行时崩溃。这个CocoaPods问题已经在CocoaPods/CocoaPods#10234中修复,并在即将发布的CocoaPods 1.10.1补丁版本中合并。

qco9c6ql

qco9c6ql2#

勾选“用Rosetta打开”选项(如下面的截图)帮助我解决了这个问题,错误消失后,你可以切换回来,在没有Rosetta的情况下打开Xcode。

a7qyws3x

a7qyws3x3#

你不再需要根据Firebase的更新来附加M1。你可以在链接上检查它以获得进一步的说明。
从Firebase 7.5.0开始,Firebase通过CocoaPods支持苹果Silicon Mac。CocoaPods 1.10.0是必需的。
不再需要FirebaseAnalytics支持版本7.2.0到7.4.0所需的特殊M1版本。
https://github.com/firebase/firebase-ios-sdk/blob/master/AppleSilicon.md

myss37ts

myss37ts4#

试试这个:在你的根sudo arch -x86_64 gem install ffi cd到你的项目文件夹和arch -x86_64 pod install

drkbr07n

drkbr07n5#

请看这个。https://stackoverflow.com/a/68037246/4862289
转到应用程序文件夹-〉右键单击终端应用程序-〉获取信息
勾选使用Rosetta打开选项。
现在试试pod install

相关问题