PCM_Viewer/BUILD.md

118 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# 打包说明
## 前置要求
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`:添加隐藏导入的模块