合集-从零开始的CMake之旅
摘要:使用目标 最简单的CMake的项目是创建单个的二进制可执行文件,例如一个"hello_world.cpp",而随着项目逐渐复杂,可能会有成百上千的文件被加入其中。这时就需要有某种方式可以对文件进行划分,将其按照功能分成不同的单元,其中一个单元可能会依赖其他的单元,这样的单元就是目标。 概念 目标是个
阅读全文
摘要:Hello, CMake CMake是一个用于构建C++项目的编译链工具。通过编写CMakeLists.txt文件,完成项目的构建。 一个基本的CMakeLists.txt需要有版本要求,项目名称,和项目目标(可执行文件或库文件)组成。 cmake_minimum_required(VERSION
阅读全文
摘要:构建项目时难免需要一些跟平台或环境相关的依赖文件或代码,这时候就需要在构建项目时能够识别出不同的环境。 检查操作系统 cmake_minimum_required(VERSION 3.20) project(cmake2 LANGUAGES CXX) if(CMAKE_SYSTEM_NAME STR
阅读全文
摘要:注释 单行注释使用#,多行注释使用[=[开始,使用]=]结束,其中等号可以是任意数量的,但是开始和结束的等号数量必须一致。 指令 执行指令是CMake列表文件的基本功能,提供它的名称,后面跟着小括号,在小括号中可以包含一个以空格为分隔的参数列表,例如message("hello" world)。 指
阅读全文
摘要:测试 CMake在命令行中使用ctest [<opetions>]命令执行测试,需要在构建完CMake项目后,在构建树中执行CTest。不过这种方式需要执行很多命令在多个工作目录间进行切换,为了简化流程,可以通过添加选项在构建时直接执行测试。 ctest --build-and-test <path
阅读全文