feat: add Windows compatibility for external process execution
Some checks are pending
Build eismuliplexer for linux / Build (push) Waiting to run

This PR introduces cross-platform support for launching external binaries (`ace-lm` and `ace-synth`) on Windows systems.

**Key changes:**
* Introduced `EXE_EXT` constant in `AceStepWorker.h` using `Q_OS_WIN` macro to handle `.exe` extensions automatically.
* Updated binary path construction to ensure `QFileInfo::isExecutable()` and `QProcess` work correctly on Windows.
* The code remains fully compatible with Linux/macOS (extension remains empty).

**Why this is needed:**
On Windows, `QProcess` and `QFileInfo` require the `.exe` suffix to correctly identify and execute binary files. Without this change, the application fails to find the required tools even if they are present in the directory.
This commit is contained in:
unknown 2026-03-17 18:37:20 +04:00 committed by uvos
parent 227ee981a3
commit cb096388c8
3 changed files with 32 additions and 2 deletions

View file

@ -28,6 +28,7 @@ make -j$(nproc)
## Building
### Linux / macOS
```bash
git clone https://github.com/IMbackK/aceradio.git
cd aceradio
@ -36,6 +37,29 @@ cmake ..
make -j$(nproc)
```
### Windows (Qt6 + CMake)
To build on Windows, ensure you have **CMake** and **Qt6** installed. Run the following commands in **Command Prompt (cmd)** or **PowerShell**:
1. **Configure and Build:**
```cmd
git clone https://github.com/IMbackK/aceradio.git
cd aceradio
mkdir build
cmake -B build -DCMAKE_PREFIX_PATH="C:/Qt/6.x.x/msvc2019_64"
# Use --parallel to build using all CPU cores
# Or use -j N (e.g., -j 4) to limit the number of threads
cmake --build build --config Release --parallel
```
Note: Replace C:/Qt/6.x.x/msvc2019_64 with your actual Qt installation path.
2. **Deploy Dependencies:**
Run windeployqt to copy necessary Qt libraries to the build folder:
```cmd
"C:\Qt\6.x.x\msvc2019_64\bin\windeployqt.exe" --no-translations build\Release\aceradio.exe
```
## Setup Paths:
Go to settings->Ace Step->Model Paths and add the paths to the acestep.cpp binaries the models.