如果只是构建一个只有一个main.cpp的小型项目,那么确实不需要CMake, 直接GCC、G++编译,或者写个build.sh脚本即可, 不需要把简单的问题搞复杂化。
$ g++ main.cpp -o cmake_hello
但是如果你的项目分了很多模块,导入了很第三方源码、库文件等,那么编译也是个复杂问题,之前的先驱们为了将编译这一复杂过程封装起来,就发明了Makefile,过了一段时间,人们觉得Makefile还是过于复杂,又在基于Makeile的基础上又封装出了CMake,这下现在的人就能使用几条简单的语法就能编译一个复杂工程了。
我现在使用CMake还没有遇到高级的需求,都是做一些简单的事情,比如:

$ cmake CMakeLists.txt
// You will notice that, cmake is identifying compiler versions and configurations with default information.
$ make all
#or
$ make cmake_hello
./main.exe
以上的步骤,在Clion里只需要Shift + F10 即可。
CMake Turorial
https://medium.com/@onur.dundar1/cmake-tutorial-585dd180109b