PCM_Viewer/BUILD.md

2.7 KiB
Raw Blame History

打包说明

前置要求

  1. Python 3.8+
  2. 已安装所有依赖(见 requirements.txt
  3. PyInstaller打包脚本会自动安装

打包步骤

Windows

  1. 激活虚拟环境(如果使用):

    venv\Scripts\activate
    
  2. 运行打包脚本:

    build.bat
    

    或者直接运行:

    python build.py
    
  3. 打包完成后,可执行文件位于:

    • 单文件模式:dist\PCM_Viewer.exe
    • 文件夹模式:dist\PCM_Viewer\PCM_Viewer.exe

Linux/Mac

  1. 激活虚拟环境(如果使用):

    source venv/bin/activate
    
  2. 运行打包脚本:

    chmod +x build.sh
    ./build.sh
    

    或者直接运行:

    python build.py
    

打包模式

单文件模式(默认,推荐)

  • 所有依赖打包到一个 exe 文件中
  • 首次运行会在 exe 同目录创建配置文件:
    • dashboard.json - 布局配置
    • influx_settings.json - InfluxDB 配置
  • 配置文件保存在 exe 同目录,方便用户修改

文件夹模式

使用 --onedir 参数:

python build.py --onedir
  • 所有文件打包到一个文件夹中
  • 配置文件同样保存在 exe 同目录

配置文件处理

程序会自动处理配置文件:

  1. 首次运行:如果配置文件不存在,程序会创建默认配置
  2. 配置文件位置
    • 打包后exe 同目录
    • 开发模式:脚本同目录
  3. 配置文件内容
    • dashboard.json:保存画布布局和组件配置
    • influx_settings.json:保存 InfluxDB 连接配置

注意事项

  1. 首次运行:打包后的程序首次运行可能需要几秒钟来解压临时文件
  2. 杀毒软件:某些杀毒软件可能会误报,这是 PyInstaller 打包程序的常见问题
  3. 文件大小:单文件打包后大约 100-200MB包含 PyQt6 和 WebEngine
  4. 依赖库:确保所有依赖都已安装,特别是 PyQt6PyQt6-WebEngine

常见问题

Q: 打包后程序无法启动?

A: 检查以下几点:

  • 确保所有依赖都已安装
  • 查看控制台错误信息(如果有)
  • 尝试使用 --onedir 模式打包,查看详细错误

Q: 配置文件找不到?

A: 配置文件会自动创建在 exe 同目录。如果找不到,检查:

  • exe 是否有写入权限
  • 是否在只读目录运行

Q: Web 组件无法显示?

A: 确保打包时包含了 PyQt6.QtWebEngineWidgets,打包脚本已自动处理。

自定义打包选项

如果需要自定义打包选项,可以修改 build.py 中的 PyInstaller 参数:

  • --icon=icon.ico:添加程序图标
  • --add-data:添加额外数据文件
  • --hidden-import:添加隐藏导入的模块