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

M1芯片Mac运行Python/Django报x86_64/arm64e架构不兼容如何解决

M1芯片Mac运行Django报架构不兼容错误修复方案

报错核心原因是Python解释器、安装的Django相关依赖的二进制架构,和当前终端/VSCode进程的运行架构不匹配,混用了x86_64和arm64e版本的文件,按以下步骤排查修复即可:

第一步:确认当前运行架构

打开终端执行命令:
arch

  • 输出arm64代表当前是M1芯片原生运行模式
  • 输出x86_64/i386代表当前是Rosetta转译运行模式
    核心原则:全程保持架构统一,绝对不能混用不同架构安装的Python解释器和依赖包

第二步:清理旧的混装残留

  • 执行rm -rf 你的虚拟环境目录,彻底删除之前创建的虚拟环境,旧环境里的依赖全是混架构的,没有保留价值。
  • 卸载之前混装的Python版本:如果是Homebrew安装的Python,对应当前终端架构执行brew uninstall python@你的版本号,删掉跨架构安装的Python残留。

第三步:选择固定架构重新搭建环境

二选一即可,不要来回切换架构:

方案1:原生arm64模式(性能更好,优先选)

  • 关闭终端的Rosetta转译:找到终端App,右键选择「显示简介」,取消勾选「使用Rosetta打开」,重启终端后执行arch确认输出为arm64。
  • 安装arm版本的Python,装完执行which python3确认路径为/opt/homebrew/bin/python3,再执行file $(which python3)确认输出包含arm64标识。
  • 重新创建虚拟环境,激活后安装Django和所有项目依赖,执行file $(which django-admin)确认二进制为arm64架构后,再运行runserver、makemigrations命令即可。

方案2:Rosetta转译x86_64模式(适配不支持arm的老旧依赖)

  • 确认终端「显示简介」里的「使用Rosetta打开」为勾选状态,重启终端执行arch确认输出为x86_64。
  • 安装x86版本的Python,装完执行which python3确认路径为/usr/local/bin/python3,再执行file $(which python3)确认输出包含x86_64标识。
  • 重新创建虚拟环境,激活后安装所有项目依赖,确认django-admin为x86_64架构后再执行相关命令。

VSCode额外配置

  • 打开项目后,点击VSCode右下角的Python解释器选择项,选中你当前架构对应路径下虚拟环境里的Python解释器,不要选到其他架构的全局Python。
  • 按Cmd+Shift+P搜索Terminal: Select Default Profile,选中你已经配置好架构的终端App,重启VSCode内置终端,执行arch确认架构匹配后再运行命令。

常见踩坑提示:不要跨架构执行全局pip安装命令,不要把不同架构的Python路径优先级设乱,所有项目依赖全部放在对应架构的独立虚拟环境中,基本不会再出现同类架构不兼容问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 21:36:17