基本语句
外部编译源码
文档结构
--projecct --main.cpp --class1.cpp --class1.h --Cmakelist.txt --build
项目名
PROJECCT(hello)
版本说明
CMAKE_MINIMUM_REQUIRED(VERSION 3.2)
编译可执行文件
ADD_EXECUTABLE(hello main.cpp class1.cpp)
或者用变量指定源文件
SET(SRC_LIST main.cpp class1.h class1.cpp)
ADD_EXECUTABLE(hello SRC_LIST)
或者
SET(SOURCE_FILES main.cpp class1.h class1.cpp)
ADD_EXECUTABLE(hello SOURCE_FILES)
消息提示添加
MESSAGE(STATUS “this is BINARY dir ” ${PROJECT_BINARY_DIR})
MESSAGE(STATUS “this is SOURCE dir ” ${PROJECT_SOURCE_DIR})
其中
PROJECT_BINARTY_DIR
也可以写作HELLO_BINARY_DIR
,是build后存放二进制可执行文件的路径。其中
PROJECT_SOURCE_DIR
也可以写作HELLO_SOURCE_DIR
,是项目路径。编译过程
cd ~/project mkdir build cd build cmake .. make
..
是父级目录;.
是当前目录cmake后build里会生成 makefile 文件
make 后生成 hello.bin
./hello 运行程序
清理工作:make clean
编译静/动态库
简单静态库
假设想要生成一个静态库libclas