文章目录
CMake教程版本号:3.16.3
英文原文链接: https://cmake.org/cmake/help/latest/guide/tutorial/index.html#id2
github示例代码 https://github.com/sxpsxp12/cmake-learning-exampes
使用要求的添加,可以使我们更好得控制库或者可执行程序的链接,并且更好得控制CMake内部的属性传递。使用使用要求的主要命令有:
- target_compile_definitions
- target_compile_options
- target_include_directories
- target_link_libraries
INTERFACE关键字表示消费者需要,而生产者不需要的东西。重构第二课,sayhello库的CMakefile.txt,对于使用该库的程序来说,需要包含当前的源目录,而sayhello自身却不需要。
target_include_directories(MathFunctions
INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}
)
然后,在项目根目录的CMakefile.txt文件中,我们就可以移除EXTRA_INCLUDE的使用了。变更后的CMakefile.txt内容如下:
cmake_minimum_required(VERSION 3.0.0)
project(helloworld VERSION 0.1.0)
add_