| # scripts/build-python.sh | |
| # 脚本出错时立即退出 | |
| set -e | |
| # --- 配置 --- | |
| # 应用名称 | |
| APP_NAME="voice_dialogue" | |
| # PyInstaller 打包输出目录 | |
| PYINSTALLER_DIST_DIR="dist" | |
| # Electron 应用中存放 Python 可执行文件的目录 | |
| ELECTRON_PYTHON_DIST_DIR="electron-app/python-dist" | |
| # PyInstaller 构建目录 | |
| PYINSTALLER_BUILD_DIR="build/voice_dialogue" | |
| # Spec 文件 | |
| SPEC_FILE="build/pyinstaller/${APP_NAME}.spec" | |
| # --- 清理旧文件 --- | |
| echo "--- 清理旧的 Python 构建文件 ---" | |
| rm -rf "./${PYINSTALLER_DIST_DIR}" | |
| rm -rf "./${PYINSTALLER_BUILD_DIR}" | |
| rm -rf "./${ELECTRON_PYTHON_DIST_DIR}" | |
| mkdir -p "./${ELECTRON_PYTHON_DIST_DIR}" | |
| # --- 运行 PyInstaller --- | |
| echo "--- 开始使用 PyInstaller 打包 Python 应用 ---" | |
| pyinstaller --noconfirm \ | |
| --clean \ | |
| "${SPEC_FILE}" | |
| # --- 复制可执行文件 --- | |
| echo "--- 复制可执行文件到 Electron 目录 ---" | |
| cp -r "./${PYINSTALLER_DIST_DIR}/${APP_NAME}/." "./${ELECTRON_PYTHON_DIST_DIR}/" | |
| echo "可执行文件已复制到 ${ELECTRON_PYTHON_DIST_DIR}" | |
| echo "--- Python 应用打包完成 ---" | |