2024-09-15 01:37:29 -06:00
|
|
|
# Building
|
|
|
|
|
|
|
|
ICEngine supports both single and multi type configuration types:
|
2024-09-15 01:44:52 -06:00
|
|
|
Make/Ninja (NOTE: MingW Makefiles do not support modules which this project uses!)
|
2024-09-15 01:37:29 -06:00
|
|
|
|
|
|
|
```bash
|
|
|
|
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
|
|
|
|
cmake --build build
|
|
|
|
```
|
|
|
|
|
|
|
|
\- OR -
|
|
|
|
|
|
|
|
Visual Studio:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
cmake -S . -B build -G "Visual Studio 16 2019" # or your preferred Visual Studio version
|
|
|
|
cmake --build build --config Debug
|
|
|
|
cmake --build build --config Release
|
|
|
|
```
|
2024-09-15 01:44:52 -06:00
|
|
|
|
|
|
|
## Toolchain Versions
|
|
|
|
#### CMake
|
|
|
|
This project requires CMake 3.28 or greater, due to its support for C++ Modules.
|
|
|
|
|
|
|
|
#### Compilers
|
|
|
|
I have only ever tried to build using the following tools and versions:
|
|
|
|
|
|
|
|
- **Ninja**: 1.12.1
|
|
|
|
- **Clang**: 18.1.8
|
|
|
|
- **C++/GCC**: 14.2.0
|
|
|
|
|
|
|
|
If you have issues building on your target platform or compiler, please ensure they can use C++'s `modules` (required by
|
|
|
|
the project)
|