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

M1 Mac Mini上用Bazel构建iOS遇ios_sim_arm64工具链错误

解决Bazel构建iOS模拟器时"ios_sim_arm64工具链缺失"问题

问题核心

你遇到的错误是因为Bazel在M1(arm64)架构的Mac上尝试构建iOS模拟器目标时,找不到对应ios_sim_arm64的CC工具链,结合你的配置来看,有几个明确的问题需要修复:


解决步骤

  1. 修复.bazelrc语法错误
    你的.bazelrc中--ios_multi_cpus=x86_64这一行末尾缺少反斜杠,导致后续的构建参数没有被正确加载。同时,M1机器需要适配arm64模拟器架构,修改后配置如下:

    build \
      --compilation_mode=fastbuild \
      --worker_sandboxing=false \
      --strategy=SwiftCompile=local \
      --features=swift.cacheable_swiftmodules \
      --apple_platform_type=ios \
      --xcode_version=13.4 \
      --ios_minimum_os=14.5 \
      --ios_simulator_device="iPhone 13" \
      --ios_simulator_version=15.5 \
      --ios_multi_cpus=x86_64,arm64 \
      --progress_report_interval=1 \
      --subcommands \
      --sandbox_debug \
      --announce_rc \
      --features=swift.use_global_module_cache \
      --action_env=PATH=/usr/bin:/bin \
      --action_env=BAZEL_IGNORE_SYSTEM_HEADERS_VERSIONS=1 \
      --spawn_strategy=local \
      --verbose_failures 
    
  2. 更新rules_apple版本
    你当前使用的rules_apple 1.1.1版本较旧,对M1架构的ios_sim_arm64工具链支持不完善。将WORKSPACE中的rules_apple更新到兼容Bazel 5.3.0的2.x版本,示例如下:

    http_archive(
        name = "build_bazel_rules_apple",
        sha256 = "f0a33f3942f74a77a6e38e4b6e1c383d5d26445a92e2ffe7d6d2a446025f3a9a",
        url = "https://github.com/bazelbuild/rules_apple/releases/download/2.3.0/rules_apple.2.3.0.tar.gz",
    )
    
  3. 清理Bazel缓存
    旧缓存可能残留不兼容的工具链配置,执行以下命令彻底清理:

    bazel clean --expunge
    
  4. 验证Xcode命令行工具配置
    确保Xcode命令行工具已正确关联到你的Xcode 13.4:

    xcode-select -p
    

    若输出路径不正确,执行:

    sudo xcode-select -s /Applications/Xcode_13.4.app/Contents/Developer
    

内容的提问来源于stack exchange,提问作者Taha Selim Bebek

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 07:05:24