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

M1 Mac用Cross交叉编译报错:docker无匹配linux/arm64/v8镜像清单

解决M1 Mac上Cross拉取x86_64-unknown-linux-musl镜像失败的问题

问题核心是你使用的Cross 0.2.5版本对应的镜像未适配Apple Silicon的arm64架构,Docker找不到对应manifest导致拉取失败。以下是几种可行的解决办法:

  • 升级Cross到最新版本
    新版本Cross已适配arm64架构,直接升级即可:

    cargo install -f cross
    

    若crates.io上的版本未及时更新,也可直接从GitHub安装最新开发版:

    cargo install -f cross --git https://github.com/cross-rs/cross
    
  • 开启Docker的Rosetta模拟
    打开Docker Desktop,进入Settings -> Features in development,勾选Use Rosetta for x86/amd64 emulation on Apple Silicon,重启Docker后再尝试拉取镜像。Docker会通过Rosetta模拟x86_64环境,正常拉取对应架构的镜像。

  • 手动指定架构拉取镜像
    若升级后仍有问题,可手动拉取x86_64架构的镜像:

    docker pull --platform linux/amd64 ghcr.io/cross-rs/x86_64-unknown-linux-musl:latest
    

    拉取完成后执行cross build --target x86_64-unknown-linux-musl即可。

  • 配置Cross指定平台
    在项目根目录创建Cross.toml文件,手动指定目标平台的镜像和架构:

    [target.x86_64-unknown-linux-musl]
    image = "ghcr.io/cross-rs/x86_64-unknown-linux-musl:latest"
    platform = "linux/amd64"
    

    这样Cross会按照指定架构拉取和使用镜像。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 16:33:16