Flutter 报错:Undefined symbols for architecture arm64

最近 Flutter SDK 升级到 2.5.1,xcode 执行构建时,很多包都报不支持,把所有的包升级到最新版后错误逐渐减少。最后构建时,只有 fluwx 报 “Undefined symbols for architecture arm64” 的错误。

报错信息大概如下:

ld: in ____PATH____/ios/Pods/WechatOpenSDK_Fuck/OpenSDK1.9.2/libWeChatSDK.a(WechatAuthSDK.o), building for iOS Simulator, but linking in object file built for iOS, file '____PATH____/ios/Pods/WechatOpenSDK_Fuck/OpenSDK1.9.2/libWeChatSDK.a' for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

各方排查后,处理方式如下:

打开 ios 工程下的 Podfile 文件,修改 post_install do |installer| 部分的代码:

# 其余代码略

post_install do |installer|
  installer.pods_project.targets.each do |target|
    flutter_additional_ios_build_settings(target)
    target.build_configurations.each do |config|
      config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
    end
  end
end

再次执行构建即可成功!

参考:https://stackoverflow.com/questions/63607158/xcode-12-building-for-ios-simulator-but-linking-in-an-object-file-built-for-io

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容