CMake Build System

OpenTwin builds with CMake. Every library, service and tool is build by a CMakeLists.txt that handes almost all of the work to a shared meta build system in Scripts/CMake.

Each project file is short and declarative. You declare what the target is (a library, an executable, a Python subprocess), which dependencies it needs as tokens, and the system works out the include paths, link directories, runtime library, export macro, Qt integration and the debug/release setup.

Note

The pages how_to/create_new_library and how_to/create_new_services still describe the old Visual Studio .vcxproj workflow (manual “Configuration Type”, DebugTest and ReleaseTest configurations, and so on). Those steps no longer apply under CMake. Follow Writing a CMakeLists.txt instead.