有时我们的代码功能都在头文件中实现,比如C++中的模板类及相关的成员函数定义或者简单的工具类函数。一般的library都是包含源文件(.cpp、.c)文件,因此我们要使用到add_library的INTERFACE功能。
目录结构如下:
│ CMakeLists.txt --- 根目录CMakeLists.txt文件①
│ main.cpp
│
└─calculator
│ add.h
└──CMakeLists.txt --- 模块目录CMakeLists.txt文件②
根目录CMakeLists.txt文件①内容如下:
cmake_minimum_required(VERSION 3.16)
project(multi_targets VERSION 1.0.0)
set(CMAKE_CXX_COMPILER g++)
add_subdirectory(calculator)
add_executable(multi_targets
main.cpp
)
target_link_libraries(multi_targets PRIVATE
calculator_lib
)
main.cpp文件,与CMake之多target内容相同。
add.h头文件内容如下:
#ifndef ADD_H
#define ADD