# 打包说明 ## 前置要求 1. Python 3.8+ 2. 已安装所有依赖(见 `requirements.txt`) 3. PyInstaller(打包脚本会自动安装) ## 打包步骤 ### Windows 1. 激活虚拟环境(如果使用): ```cmd venv\Scripts\activate ``` 2. 运行打包脚本: ```cmd build.bat ``` 或者直接运行: ```cmd python build.py ``` 3. 打包完成后,可执行文件位于: - 单文件模式:`dist\PCM_Viewer.exe` - 文件夹模式:`dist\PCM_Viewer\PCM_Viewer.exe` ### Linux/Mac 1. 激活虚拟环境(如果使用): ```bash source venv/bin/activate ``` 2. 运行打包脚本: ```bash chmod +x build.sh ./build.sh ``` 或者直接运行: ```bash python build.py ``` ## 打包模式 ### 单文件模式(默认,推荐) - 所有依赖打包到一个 exe 文件中 - 首次运行会在 exe 同目录创建配置文件: - `dashboard.json` - 布局配置 - `influx_settings.json` - InfluxDB 配置 - 配置文件保存在 exe 同目录,方便用户修改 ### 文件夹模式 使用 `--onedir` 参数: ```bash python build.py --onedir ``` - 所有文件打包到一个文件夹中 - 配置文件同样保存在 exe 同目录 ## 配置文件处理 程序会自动处理配置文件: 1. **首次运行**:如果配置文件不存在,程序会创建默认配置 2. **配置文件位置**: - 打包后:exe 同目录 - 开发模式:脚本同目录 3. **配置文件内容**: - `dashboard.json`:保存画布布局和组件配置 - `influx_settings.json`:保存 InfluxDB 连接配置 ## 注意事项 1. **首次运行**:打包后的程序首次运行可能需要几秒钟来解压临时文件 2. **杀毒软件**:某些杀毒软件可能会误报,这是 PyInstaller 打包程序的常见问题 3. **文件大小**:单文件打包后大约 100-200MB(包含 PyQt6 和 WebEngine) 4. **依赖库**:确保所有依赖都已安装,特别是 `PyQt6` 和 `PyQt6-WebEngine` ## 常见问题 ### Q: 打包后程序无法启动? A: 检查以下几点: - 确保所有依赖都已安装 - 查看控制台错误信息(如果有) - 尝试使用 `--onedir` 模式打包,查看详细错误 ### Q: 配置文件找不到? A: 配置文件会自动创建在 exe 同目录。如果找不到,检查: - exe 是否有写入权限 - 是否在只读目录运行 ### Q: Web 组件无法显示? A: 确保打包时包含了 `PyQt6.QtWebEngineWidgets`,打包脚本已自动处理。 ## 自定义打包选项 如果需要自定义打包选项,可以修改 `build.py` 中的 PyInstaller 参数: - `--icon=icon.ico`:添加程序图标 - `--add-data`:添加额外数据文件 - `--hidden-import`:添加隐藏导入的模块