You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter macOS编译失败:MACOSX_DEPLOYMENT_TARGET版本错误及权限问题

解决Flutter macOS编译的两个常见问题

一、MainMenu.xib编译失败(目录错误/权限拒绝)

  • 彻底清理构建缓存:
    1. 执行终端命令:flutter clean
    2. 打开Xcode,按Shift+Cmd+K清理Build Folder
    3. 手动删除Xcode的Derived Data:打开Xcode偏好设置 -> Locations,点击Derived Data旁的箭头,删除对应项目的文件夹
  • 检查并修复目录权限:
    确认macos/Runner/Resources目录存在,Finder中右键该文件夹选择「显示简介」,在「共享与权限」中确保当前用户拥有「读写」权限,必要时点击锁图标解锁后修改
  • 重新生成MainMenu.xib:
    备份现有macos/Runner/Resources/MainMenu.xib后删除,终端执行flutter create --platforms macos .(末尾的点表示复用现有项目配置)重新生成模板文件
  • 验证Xcode构建路径:
    打开macos/Runner.xcworkspace,选中Runner项目,进入Build Settings -> Build Locations,确认「Build Products Path」和「Intermediate Build Files Path」无特殊字符或不存在的目录

二、MACOSX_DEPLOYMENT_TARGET仍存在10.11的情况

  • 统一Xcode项目的部署目标:
    打开macos/Runner.xcworkspace,选中Runner项目,Build Settings中搜索MACOSX_DEPLOYMENT_TARGET,将所有Target(包括Runner、FlutterPluginRegistrant等第三方插件Target)的部署目标都设为10.13
  • 完善Podfile的post_install脚本:
    修改macos/Podfile中的脚本,确保覆盖Pods项目本身和所有Target:
    post_install do |installer|
      installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
          config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '10.13'
        end
      end
      # 同步设置Pods项目本身的部署目标
      installer.pods_project.build_configurations.each do |config|
        config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '10.13'
      end
    end
    
  • 重新安装Pods:
    终端进入macos目录,执行:
    pod deintegrate
    pod install
    
  • 升级Flutter SDK:
    旧版本Flutter可能强制注入旧部署目标,执行flutter upgrade升级到最新稳定版后重新构建

内容的提问来源于stack exchange,提问作者ApiShiro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 18:31:07