以微信SDK WechatOpenSDK 1.8.3 为例,在编译过程中无法使用 Xcode 通过 M系列的Arm架构下编译通过
问题与原因
..., building for iOS Simulator, but linking in object file built for iOS, file '...'
could not find module for target 'x86_64-apple-ios-simulator'
问题原因:相关SDK不支持Arm架构的iOS模拟器
解决方法
第一步:更改 Podfile 文件,向其尾部添加模拟器 arm64 架构排除;添加完成后请 pod install
platform :ios, '10.0'
target 'YourApp' do
use_frameworks!
pod 'WechatOpenSDK'
# 需要添加的排除模拟器arm64
post_install do |installer|
installer.pods_project.build_configurations.each do |config|
config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
end
end
# 排除结束
end
第二步:
添加排除模拟器 arm64 到项目 PEROJECT 和 TARGETS 的 Excluded Architectures 中
路径1:PEROJECT - “项目”- Build Settings - Excluded Architectures
路径2:TARGETS - “项目” - Build Settings - Excluded Architectures
注意:添加的时候不要添加 Any SDK,我们只需要按需添加,防止 Any All后打包时需要重新改
如项目是 iOS 项目 排除就选择 Any iOS Simulator SDK arm64
同理其他的可以选择其他的SDK,当然如果多兼容项目可以点击 Debug 和 Release 右侧的 “+” 来添加多个
到这里所有修改结束,然后 Clean 下项目,重新编译,会发现项目已经正常跑起来了。
有问题可以留言交流。


文章评论