如今如果你是unix平台下面的程序员,相信make,cmake,autoconfig,makefile,CMakeLists.txt这些个编译相关的东西经常接触。今天要讲的是cmake工具,因为mac平台下面广泛使用,且新版的mysql都使用cmake编译了。
优点
能在写与平台无关的CMakeLists.txt文件,然后可以生成各个平台需要的makefile文件,从而可以用make顺利编译。常用命令
cmake . #根据当前目录的CMakeLists.txt生成makefile文件
make build && cd build && cmake ..
#这既是外部构建,让构建文件全部生成到build文件夹中,这样显然很清晰
makefile中几个变量的含义
$@ //目标文件
$^ //所有的依赖文件
$< //第一个依赖文件。