
一、常见内置变量
PROJECT_SOURCE_DIR:工程的根目录
PROJECT_BINARY_DIR:运行cmake命令的目录,通常为${PROJECT_SOURCE_DIR}/build
PROJECT_NAME:返回通过 project 命令定义的项目名称
CMAKE_CURRENT_SOURCE_DIR:当前处理的 CMakeLists.txt 所在的路径
CMAKE_CURRENT_BINARY_DIR:target 编译目录
CMAKE_CURRENT_LIST_DIR:CMakeLists.txt 的完整路径
EXECUTABLE_OUTPUT_PATH:重新定义目标二进制可执行文件的存放位置
二、综合案例
#指定cmake的版本
cmake_minimum_required(VERSION 3.8)
#指定项目名称和版本号
project(main VERSION 1.0.0 LANGUAGES C CXX)#指定编译器
set(CMAKE_C_COMPILER "gcc")
set(CMAKE_CXX_COMPILER "g++")#指定可执行程序 以及 源文件
add_executable(main ./src/main.c ./src/add.c ./src/b.c)
#指定头文件的路径
include_directories(./inc)
include_directories(./lib)#在顶层的CmakeLists.txt中指定 子CmakeLists的路径
add_subdirectory(./lib)#工程中使用了库文件 ,要指定库文件的路径
link_directories(./lib)
#可执行文件main 使用了 库文件 liblcd.so
target_link_libraries(main lcd)