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

苹果硅Mac下如何将Python文件打包为exe并解决PyInstaller报错

报错原因

AssertionError: Sanity check failed!报错是苹果硅(M系列)芯片macOS设备上旧版本PyInstaller的已知bug,由二进制签名校验逻辑不兼容ARM架构导致。额外需要明确:macOS原生环境下直接运行PyInstaller默认只能生成macOS可用的可执行程序,无法直接生成Windows平台的.exe文件。


可行解决方案

方案1:虚拟机Windows环境打包(兼容性最高,优先推荐)

  • 在苹果硅Mac上安装Parallels Desktop、VMware Fusion等虚拟机软件,部署Windows 10/11 ARM版系统
  • 将完整项目拷贝到虚拟机Windows系统内,安装对应版本Python、项目依赖包和PyInstaller
  • 直接在Windows环境执行打包命令,关联资源文件使用--add-data参数,示例命令:pyinstaller -F -w --add-data "assets;." 入口文件.py,打包生成的.exe文件存放在dist目录,无兼容性问题

方案2:Wine模拟Windows环境交叉打包

  • 通过Homebrew安装wine运行环境:brew install --cask wine-stable
  • 下载Windows版Python嵌入式包,解压到wine的虚拟C盘对应目录
  • 在wine环境中安装PyInstaller和项目依赖:wine python -m pip install pyinstaller 依赖包名称
  • 进入项目根目录执行打包命令:wine pyinstaller -F -w --add-data "assets;." 入口文件.py,生成的.exe文件可直接在Windows运行

方案3:仅需macOS可执行程序的修复方案

  • 升级PyInstaller到最新版本,修复签名校验bug:pip3 install --upgrade pyinstaller
  • 打包时添加--no-sign参数跳过签名校验步骤,示例命令:pyinstaller --no-sign -F -w --add-data "assets:." 入口文件.py,macOS下资源路径分隔符使用冒号

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 08:24:05