记录并整理CMake配置及使用技巧。

Contents

安装

语法

Pseudo Targets

Interface Libraries

CMake >= 3.19
库目标可以选择含源码,主要用于 header-only 库。

CMake >= 3.23
可以使用 target_sources::INTERFACE 添加头文件到接口库。

add_library(Eigen INTERFACE)

target_sources(Eigen INTERFACE
  FILE_SET HEADERS
    BASE_DIRS src
    FILES src/eigen.h src/vector.h src/matrix.h
)

add_executable(exe1 exe1.cpp)
target_link_libraries(exe1 Eigen)

模板

参考