解决Flutter 2.10.5在升级Xcode 16后的各种报错

Flutter 环境

  • Flutter version 2.10.5
  • Dart version 2.16.2
  • DevTools version 2.9.2
  • CocoaPods version 1.16.2
  • Xcode 16.3

问题一:XCResult parsing error: Error: This command is deprecated and will be removed in a future release, --legacy flag is required to use it.

参考链接:https://github.com/flutter/flutter/pull/152988

1.打开flutter sdk代码,找到‎packages/flutter_tools/lib/src/ios/xcresult.dart文件,按照下图修改

2.打开flutter sdk代码,找到‎/packages/flutter_tools/test/general.shard/ios/xcresult_test.dart文件,按照下图修改

3.删除flutter sdk中的flutter_tools.snapshort和flutter_tools.stamp文件

  • /bin/cache/flutter_tools.snapshot
  • /bin/cache/flutter_tools.stamp

4.重新运行flutter doctor后再次运行项目即可

问题二:Invalid Podfile file: undefined method 'exists?' for class File

参考链接:https://stackoverflow.com/questions/75414034/invalid-podfile-file-undefined-method-exists-for-fileclass

在你的flutter sdk中打开这个文件:

复制代码
flutter/packages/flutter_tools/bin/podhelper.rb

然后更换

复制代码
return [] unless File.exists? file_path

复制代码
return [] unless File.exist? file_path

问题三:Error: Cannot run with sound null safety, because the following dependencies don't support null safety

参考链接:https://www.hudiepm.com/swift/xcode-swift---no-sound-null-safety.html

1.点击targets中的项目

2.再点击build setting

3.在User-Defined中添加EXTRA_FRONT_END_OPTIONS 值为--no-sound-null-safety

问题四:Error (Xcode): linker command failed with exit code 1 (use -v to see invocation)

参考链接:https://juejin.cn/post/7449992870625771556

复制代码
Target debug_universal_framework failed: ProcessException: Process exited abnormally:
ld: warning: -bitcode_bundle is no longer supported and will be ignored
ld: warning: -bitcode_process_mode is no longer supported and will be ignored
ld: file cannot be open()ed, errno=2 path=marker in 'marker'
clang: error: linker command failed with exit code 1 (use -v to see invocation)

1.找到flutter sdk路径中的iOS.dart文件,并且注释'-fembed-bitcode-marker':
/packages/flutter_tools/lib/src/build_system/targets/ios.dart

2.删除flutter sdk中的flutter_tools.snapshort和flutter_tools.stamp文件

  • 路径:/bin/cache/flutter_tools.snapshot
  • 路径:/bin/cache/flutter_tools.stamp

3.重新运行flutter doctor后再次运行项目即可

问题五:Error (Xcode): SDK does not contain 'libarclite' at the path'/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_iphonesimulator.a'; try increasing the minimum deployment target

1.找到flutter module的隐藏的iOS文件夹中podfile文

2.Podfile文件中添加如下,因为最低部署目标已提升至 iOS 12。

复制代码
target.build_configurations.each do |config|
    config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0'
end
相关推荐
软件小滔1 小时前
拖拽出来的专业感
经验分享·macos·mac·应用推荐
行者961 小时前
Flutter与OpenHarmony深度整合:打造高性能自定义图表组件
flutter·harmonyos·鸿蒙
行者962 小时前
Flutter适配OpenHarmony:高效数据筛选组件的设计与实现
开发语言·前端·flutter·harmonyos·鸿蒙
coooliang2 小时前
Macos下载元神 ipa文件
macos
Benny的老巢2 小时前
【n8n工作流入门02】macOS安装n8n保姆级教程:Homebrew与npm两种方式详解
macos·npm·node.js·n8n·n8n工作流·homwbrew·n8n安装
yujunlong39192 小时前
Dart Frog 后端开发实战:轻量级 API 构建与生产环境调优
flutter·dart·dart frog
Swuagg2 小时前
Flutter 探索入门
flutter
kirk_wang3 小时前
当Flutter的并发利器遇上鸿蒙:flutter_isolate的OHOS适配之旅
flutter·移动开发·跨平台·arkts·鸿蒙
声网3 小时前
如何用 Fun-ASR-Nano 微调一个「听懂行话」的语音模型?丨Voice Agent 学习笔记
笔记·学习·xcode
望眼欲穿的程序猿3 小时前
基于Linux&MacOS 开发Ai8051U
linux·运维·macos