更新
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
import os
|
||||
from pathlib import Path
|
||||
|
||||
from PyInstaller.utils.hooks import collect_submodules
|
||||
from PyInstaller.utils.hooks import collect_data_files, collect_submodules
|
||||
|
||||
|
||||
project_root = Path(SPECPATH)
|
||||
@@ -14,9 +14,11 @@ hidden_imports = [
|
||||
"app_version",
|
||||
"backend_client",
|
||||
"conversation_store",
|
||||
"gui_runtime",
|
||||
"mcp_bridge",
|
||||
"registration_store",
|
||||
"runtime_paths",
|
||||
"wechat_gui",
|
||||
"wechat_gui_qt",
|
||||
"PySide6.QtWebEngineCore",
|
||||
"PySide6.QtWebEngineWidgets",
|
||||
@@ -24,29 +26,35 @@ hidden_imports = [
|
||||
hidden_imports += collect_submodules("mcp")
|
||||
|
||||
a = Analysis(
|
||||
[str(project_root / "wechat_gui.py")],
|
||||
[str(project_root / "app_main.py")],
|
||||
pathex=[str(project_root)],
|
||||
binaries=[],
|
||||
datas=[
|
||||
(str(project_root / "edge_light_theme"), "edge_light_theme"),
|
||||
(str(project_root / "assets" / "brand"), "assets/brand"),
|
||||
],
|
||||
]
|
||||
# 昵称 OCR 的模型与配置:只收代码不收这些文件的话,打包后 RapidOCR
|
||||
# 初始化直接失败,会话身份静默退化。
|
||||
+ collect_data_files("rapidocr_onnxruntime"),
|
||||
hiddenimports=hidden_imports,
|
||||
hookspath=[],
|
||||
hooksconfig={},
|
||||
runtime_hooks=[],
|
||||
excludes=["PyQt5", "PyQt6", "PySide2"],
|
||||
noarchive=False,
|
||||
optimize=0,
|
||||
# 去掉 assert 与 __debug__ 分支;不动 docstring(有库在运行期读它)。
|
||||
optimize=1,
|
||||
)
|
||||
pyz = PYZ(a.pure)
|
||||
|
||||
# 目录形态(onedir):单文件 EXE 每次冷启动都要把几百 MB 的 Qt WebEngine
|
||||
# 解压进临时目录再被杀毒软件逐个扫一遍,低配硬盘上一等就是几十秒。
|
||||
# 目录形态零解压,冷启动只剩正常的模块加载。
|
||||
exe = EXE(
|
||||
pyz,
|
||||
a.scripts,
|
||||
a.binaries,
|
||||
a.datas,
|
||||
[],
|
||||
exclude_binaries=True,
|
||||
name=app_name,
|
||||
debug=False,
|
||||
bootloader_ignore_signals=False,
|
||||
@@ -60,3 +68,12 @@ exe = EXE(
|
||||
entitlements_file=None,
|
||||
icon=str(project_root / "assets" / "brand" / "zhenyangtang-icon.ico"),
|
||||
)
|
||||
|
||||
coll = COLLECT(
|
||||
exe,
|
||||
a.binaries,
|
||||
a.datas,
|
||||
strip=False,
|
||||
upx=False,
|
||||
name=app_name,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user