46 lines
2.2 KiB
Markdown
46 lines
2.2 KiB
Markdown
# BUILD WINDOWS — hướng dẫn build installer (.exe) trên máy Windows
|
|
|
|
## Yêu cầu trước khi build
|
|
| Thành phần | Cài từ | Ghi chú |
|
|
|---|---|---|
|
|
| **Python 3.11+** | python.org | Tick **"Add to PATH"** |
|
|
| **Node.js 20+** | nodejs.org | |
|
|
| **Rust (MSVC toolchain)** | https://rustup.rs (hoặc script tự cài) | Cần cho Tauri |
|
|
| **Visual Studio Build Tools** | visualstudio.microsoft.com | Workload **"Desktop development with C++"** (bắt buộc — MSVC linker cho Rust/Tauri) |
|
|
| **WebView2 Runtime** | Windows 10/11 có sẵn; Windows 7/8 tải từ Microsoft | Tauri yêu cầu |
|
|
|
|
> Nếu lỗi `cargo: program not found` → chưa cài Rust: chạy `rustup-init.exe -y` rồi **mở cmd MỚI** (PATH refresh).
|
|
|
|
## Cách build — 1 lệnh
|
|
```bat
|
|
build_windows.bat
|
|
```
|
|
Script tự làm: cài Rust (nếu thiếu) → pip deps → Babel precompile → `pyinstaller engine.spec` (daw_engine.exe) → copy sidecar → `npx tauri build`.
|
|
|
|
## Kết quả
|
|
```
|
|
src-tauri\target\release\bundle\nsis\SonicForgeDAW_1.0.0_x64-setup.exe ← cài đặt (.exe)
|
|
src-tauri\target\release\bundle\msi\SonicForgeDAW_1.0.0_x64_en-US.msi ← MSI
|
|
dist\daw_engine.exe ← engine đơn (debug)
|
|
```
|
|
|
|
## Thủ công (không dùng script)
|
|
```bat
|
|
pip install pyinstaller pywin32
|
|
pip install -r requirements.txt
|
|
pip install --no-deps pedalboard>=0.8.0
|
|
node node_modules/@babel/cli/bin/babel.js app/static/js/app.jsx --config-file ./babel.config.json -o app/static/js/app.precompiled.js
|
|
pyinstaller engine.spec --clean --noconfirm
|
|
mkdir src-tauri\binaries
|
|
copy dist\daw_engine.exe src-tauri\binaries\daw_engine-x86_64-pc-windows-msvc.exe
|
|
npm install -D @tauri-apps/cli@^2
|
|
npx tauri build
|
|
```
|
|
|
|
## Kiểm thử sau cài (spec — mục IV)
|
|
1. Mở app → Task Manager: `daw_engine.exe` chạy nền; đóng app → tiến trình tắt hẳn (không orphan).
|
|
2. Browser ngoài mở `http://localhost:8000/docs` → Swagger hiển thị.
|
|
3. Plugin Manager → path `C:\Program Files\Common Files\VST3` → Scan → tìm thấy VST3 (Vital, Surge XT...).
|
|
4. Export WAV → file chứa tiếng VST3 (qua pedalboard).
|
|
5. Dữ liệu lưu tại `%APPDATA%\SonicForgeDAW\`.
|