TableSynthesis/BUILD_FIXES.md
2025-07-02 19:37:10 +08:00

86 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Windows构建问题修复指南
## 🔧 已修复的问题
### 1. Hidden import 'numpy.core._methods' not found
**解决方案**: 在spec文件中添加了完整的numpy隐藏导入
```python
'numpy.core._methods',
'numpy.core._dtype_ctypes',
'numpy.core._internal',
```
### 2. Hidden import "jinja2" not found
**解决方案**: 添加了jinja2相关导入
```python
'jinja2',
'jinja2.ext',
'markupsafe',
```
### 3. Library not found: msvcp140-1a0962f2a91a74c6d7136a768987a591.dll
**解决方案**:
- 禁用UPX压缩 (`upx=False`)
- 添加pandas完整依赖收集
- 使用`--collect-all=pandas`选项
## 🚀 使用修复后的构建脚本
### 1. 测试环境
```bash
python test_build.py
```
### 2. 运行构建
```bash
python windows_build.py
```
## 📋 构建选项说明
### PyInstaller命令行选项
- `--clean`: 清理缓存
- `--noconfirm`: 不询问确认
- `--log-level=INFO`: 详细日志
- `--collect-all=pandas`: 收集pandas所有模块
- `--collect-all=numpy`: 收集numpy所有模块
- `--collect-all=openpyxl`: 收集openpyxl所有模块
### 关键隐藏导入
```python
'numpy.core._methods',
'pandas._libs.window.aggregations',
'ctypes.util',
'pkg_resources.py2_warn',
```
## ⚠️ 常见问题
### 1. 构建时间长
- 正常现象首次构建可能需要5-10分钟
- 后续构建会使用缓存,速度更快
### 2. 文件大小大
- 包含完整Python环境和所有依赖
- 可以通过排除不必要的模块来减小大小
### 3. 警告信息
- 大部分WARNING可以忽略
- 只要没有ERROR构建通常能成功
## 🎯 构建成功标志
```
✅ 构建成功! 耗时: XX.X秒
✅ 生成文件: dist/座位分配系统.exe
✅ 文件大小: XX.X MB
```
## 📦 分发包内容
构建成功后会生成:
- `座位分配系统_Windows_分发包/`
- `座位分配系统.exe` - 主程序
- `README.txt` - 使用说明
- `示例文件/` - 示例Excel文件如果存在