CMake官方的定義:
CMake is an extensible, open-source system that manages the build
process in an operating system and in a compiler-independent manner.
百度百科對CMake的定義:
CMake是一個跨平臺的安裝(編譯)工具,可以用簡單的語句來描述所有平臺的安裝(編譯過程)。
我手寫過Makefile;學習NSIS源碼的時候,也學習過SCons;
使用CMake,Makefile,SCons的前提是項目需要跨Windows、Linux平臺。
我以前的主要工作平臺是Windows,IDE使用VS系列,VS+VA非常完美的組合,敲代碼的速度完全不輸給思維速度。Makefile、SCons都是自成體系的構建系統,完全無法和VS兼容,如果使用Makefile或者SCons,我同時需要維護兩套構建系統(累),CMake完美解決了這個問題,CMake可以直接編譯出VS、XCode使用的工程文件,以后所有的編碼工作都是通過IDE來完成,當需要增加、刪除源文件的時候,修改一下CMakeLists.txt,在編譯,工程文件會自動刷新。
完美解決了,使用IDE編寫、調試代碼,處處編譯代碼的需求。