This project uses CMake with Ninja as the build system for fast, efficient builds.
- CMake 3.16+
- Ninja build system
- Qt6 (Core, Gui, Widgets, LinguistTools)
- C++20 compatible compiler (GCC 14+ or Clang)
./build.sh # Release build
./build.sh --debug # Debug build
./build.sh --clang # Build with clang
./build.sh --clean # Clean rebuildmake # Default release build
make debug # Debug build
make clang # Build with clang
make clean # Clean rebuild
make install # Install (requires sudo)# Configure and build
cmake -G Ninja -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build --parallel
# Clean
rm -rf build
# Install
cmake --install build # requires sudo- Release: Optimized build with
-O3, LTO (GCC only), andNDEBUG - Debug: Debug symbols, no optimization
- GCC (default): Standard GNU compiler with all warnings as errors
- Clang: Alternative compiler via
--clangor-DUSE_CLANG=ON
- Colored Output: Automatic colored diagnostics for Ninja builds
- Compile Commands:
compile_commands.jsongenerated for IDE support - Parallel Builds: Ninja automatically uses all CPU cores
- Qt Integration: Automatic MOC, UIC, and RCC processing
- Executable:
build/custom-toolbox - Translations: Generated automatically during build
- Compile commands:
build/compile_commands.json
Generate compile commands for IDE integration:
make compile-commandsThis creates build/compile_commands.json for use with clangd, Qt Creator, or other LSP-compatible editors.