如何为Python应用构建适配Mac操作系统的安装包
Mac平台Python应用安装包制作方案
项目结构调整说明
你不需要修改现有项目的业务代码结构,仅需调整PyInstaller的打包参数即可适配Mac的标准应用规范:
- 给PyInstaller增加
--windowed参数,打包后会直接在dist目录生成.app格式的标准Mac应用包(本质是目录结构,和你现有dist下的文件集合逻辑一致,不会触发onefile模式的解压耗时问题) - 如果你之前已经能正常生成dist下的可执行文件集合,仅需加这一个参数即可完成适配,不需要调整其他项目配置。
所需工具及对应格式说明
你可以根据自己的需求选择.dmg或.pkg格式,两种都支持单文件分发、一键安装的需求:
1. .dmg格式(普通用户分发首选,和绝大多数Mac软件的安装逻辑一致)
.dmg是磁盘镜像文件,用户打开后通常通过拖拽操作完成安装,学习成本极低。常用制作工具:
- 系统自带
hdiutil命令行工具:无需额外安装,适合集成到自动化打包流水线,核心逻辑是先把.app文件和指向「应用程序」目录的快捷方式放到同一个临时文件夹,再用命令打包成dmg镜像。 create-dmg开源命令行工具:封装了原生工具的复杂参数,支持自定义dmg窗口大小、背景图、图标位置,不需要手动调整界面,配置简单。- 如果你偏好GUI操作,可以使用
DMG Canvas,可视化拖拽调整安装引导界面,适合需要定制化展示的场景。
2. .pkg格式(适合需要自定义安装逻辑的场景)
.pkg是Mac官方的安装包格式,走系统标准安装流程,支持自定义脚本、安装路径选择、依赖安装等复杂逻辑。常用制作工具:
- 系统自带
pkgbuild+productbuild命令行工具:pkgbuild负责把你的.app打包成核心安装组件,productbuild负责添加许可协议、安装引导页、自定义前后置脚本,完全免费适合自动化流程。 - GUI工具可以选择
Packages,可视化配置安装流程的所有参数,不需要记忆命令行规则,上手更快。
最简制作流程参考
- 执行PyInstaller打包命令生成.app包,示例:
pyinstaller --windowed --name 你的应用名称 项目入口脚本.py - 若制作dmg安装包:将生成的.app和「应用程序」目录的快捷方式放入同一文件夹,用所选dmg工具打包即可,用户打开后将.app拖拽到「应用程序」快捷方式上即完成安装,应用会自动出现在启动台,你也可以在dmg中添加桌面快捷方式的引导。
- 若制作pkg安装包:用所选pkg工具指定.app的默认安装路径为
/Applications,可添加后置脚本实现自动创建桌面快捷方式,用户双击安装包后按照引导点击下一步即可完成自动安装。
内容的提问来源于stack exchange,提问作者trevor-pope
相关产品推荐
相关产品推荐

