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是一個(gè)跨平臺(tái)的安裝(編譯)工具,可以用簡單的語句來描述所有平臺(tái)的安裝(編譯過程)。
我手寫過Makefile;學(xué)習(xí)NSIS源碼的時(shí)候,也學(xué)習(xí)過SCons;
使用CMake,Makefile,SCons的前提是項(xiàng)目需要跨Windows、Linux平臺(tái)。
我以前的主要工作平臺(tái)是Windows,IDE使用VS系列,VS+VA非常完美的組合,敲代碼的速度完全不輸給思維速度。Makefile、SCons都是自成體系的構(gòu)建系統(tǒng),完全無法和VS兼容,如果使用Makefile或者SCons,我同時(shí)需要維護(hù)兩套構(gòu)建系統(tǒng)(累),CMake完美解決了這個(gè)問題,CMake可以直接編譯出VS、XCode使用的工程文件,以后所有的編碼工作都是通過IDE來完成,當(dāng)需要增加、刪除源文件的時(shí)候,修改一下CMakeLists.txt,在編譯,工程文件會(huì)自動(dòng)刷新。
完美解決了,使用IDE編寫、調(diào)試代碼,處處編譯代碼的需求。