问题描述
自ios14更新以来,我无法在CI机器上构建应用程序。它可以在Xcode中工作(我已经构建并发布了我的应用程序以测试飞行)。但是我无法通过xcodebuild cli
对其进行编译和单元测试这是我编写的用于启动单元测试的命令。
xcodebuild -workspace ./ios-apps.xcworkspace -scheme SCHEMENAME -sdk iphonesimulator14.0 -destination 'platform=iOS Simulator,name=iPhone 11,OS=14.0' test CODE_SIGNING_required=NO ONLY_ACTIVE_ARCH=NO
我尝试使用option,但以相同错误EXCLUDE_ARCH = arm64
结尾这是错误:
是为iOS模拟器构建的,但是链接了为iOS生成的目标文件,即用于架构arm64的文件“ PATHTOPROJECT / Carthage / Build / iOS / GoogleMapscore.framework / GoogleMapscore”。
有什么我可以做的才能使它起作用,还是需要向Google地图团队提交报告? 我试图更新我的迦太基部门并重新链接它们,但是没有用。
谢谢
解决方法
经过一些研究,我进一步了解了该错误。 看来苹果公司正在为将来的arm64 mac做好准备,并与它们一起提供arm64模拟器。
由于Google Maps Framework二进制文件目前显然不包含此构建体系,因此似乎使用选项ONLY_ACTIVE_ARCH = YES可以解决我的问题
我现在的工作命令是
xcodebuild -workspace ./ios-apps.xcworkspace -scheme SCHEMENAME -sdk iphonesimulator14.0 -destination 'platform=iOS Simulator,name=iPhone 11,OS=14.0' test CODE_SIGNING_REQUIRED=NO ONLY_ACTIVE_ARCH=YES