Jak dokładnie działa CMake?
Nie pytam o to tylko dla siebie. Mam nadzieję, że to pytanie będzie punktem odniesienia dla wielu początkujących, którzy mnie lubią, uznało to za całkowicie kłopotliwe, co dokładnie dzieje się za kulisami, kiedy taki małyCMakeLists.txt
plik
cmake_minimum_required (VERSION 2.6)
project(Tutorial)
add_executable(Tutorial tutorial.cpp)
i taki małytutorial.cpp
int main() { return 0; }
generowanych jest tak wiele plików
CMakeCache.txt cmake_install.cmake Makefile
CMakeLists.txt tutorial.cpp
i aCMakeFiles
folder z tak wieloma plikami i folderami
CMakeCCompiler.cmake CMakeOutput.log Makefile.cmake
cmake.check_cache CMakeSystem.cmake progress.marks
CMakeCXXCompiler.cmake CMakeTmp TargetDirectories.txt
CMakeDetermineCompilerABI_C.bin CompilerIdC Tutorial.dir
CMakeDetermineCompilerABI_CXX.bin CompilerIdCXX
CMakeDirectoryInformation.cmake Makefile2
Nie rozumienie tego, co działo się za kulisami (tj. Dlaczego pliki mogły być generowane i jaki był ich cel), było największą przeszkodą w nauce CMake.
Jeśli ktoś wie, czy mógłbyś to wyjaśnić dla dobra potomności? Jaki jest cel tych plików i kiedy piszęcmake .
, co dokładnie konfiguruje i generuje cmake zanim zbuduje projekt?