我正在尝试在 Xcode 12(beta 5)中构建一个大型(并且在 Xcode 11 上工作!)项目来为 iOS 14 做准备。代码库以前是 Objective-C,但现在它同时包含 Objective-C 和 Swift,并使用 Objective-C 和/或 Swift 的 pod。
我已经拉出了新的测试版可可豆荚支持 Xcode 12(当前为 1.10.0.beta 2)。
Pod 安装成功。当我进行构建时,我在 pod 框架上收到以下错误:
为 iOS 模拟器构建,但链接到为 iOS 构建的目标文件,用于架构 arm64
也可能是错误:
无法加载目标“arm64-apple-ios11.0”的标准库
当我去跑步时lipo -info
在框架上,它有:armv7s armv7 i386 x86_64 arm64。
此前,该项目曾有效的架构设置为:armv7、armv7s 和 arm64。
根据 Apple 文档,在 Xcode 12 中,该设置消失了。架构设置为 $(ARCHS_STANDARD)。我在排除的架构中没有设置任何内容。
这里可能发生了什么?我还无法用更简单的项目重现这一点。
基本上,你必须排除arm64
对于模拟器架构,来自您的项目和 Pod 项目。
OR
-
如果您使用的是自定义XCConfig
文件中,您只需添加此行即可排除模拟器架构。
EXCLUDED_ARCHS[sdk=iphonesimulator*] = arm64
Then
你必须为吊舱项目直到所有可可豆荚供应商都完成在他们的Podspec.
s.pod_target_xcconfig = { 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' }
s.user_target_xcconfig = { 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' }
您可以手动添加排除架构在你的 Pod 项目中构建设置,但是当你
使用pod install
.
您可以将此片段添加到您的Podfile
。它会写出必要的构建设置每次你跑步的时候pod install
.
post_install do |installer|
installer.pods_project.build_configurations.each do |config|
config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
end
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)