Генератор
Часть
CMake не вызывает компилятор сам. CMake читает CMakeLists.txt и переводит его
в список дел для другой программы — сборщика, а уже сборщик запускает
Генератор — не отдельная программа, а часть самого CMake, встроенная в cmake.exe: по названию генератора CMake понимает, какие файлы писать.
Сборщик — отдельная программа, которая потом эти файлы читает. Названия у генератора и у сборщика могут совпадать (оба называются Ninja), но генератор в этом случае всё равно часть CMake, а сборщик — программа ninja.
| Генератор | Для какого сборщика | Какие файлы пишет |
|---|---|---|
Visual Studio 18 2026 |
MSBuild | app.vcxproj, Engine.slnx |
Ninja |
Ninja | build.ninja |
Unix Makefiles |
Make | Makefile |
Если генератор не указан, CMake выбирает сам. На Windows с установленной Visual Studio это генератор Visual Studio:
первая строка вывода так и говорит — Building for: Visual Studio 18 2026.
Генератор запоминается в