1、目录结构
2、一个最小的 CMakeLists.txt
#最小版本要求
cmake_minimum_required(VERSION 3.5)
#项目
project(HelloApp
VERSION 0.0.1
DESCRIPTION "The leading Hello world App"
LANGUAGES CXX)
#添加文件
add_executable(HelloAppBinary main.cpp)
#目标编译器的特性设置
target_compile_features(HelloAppBinary PRIVATE cxx_std_20)
在这个CMakeLists.txt文件中,我们首先指定了最小的CMake的版本要求为3.5。
然后,我们定义了一个项目名为HelloApp,指定了项目的版本为0.0.1,并添加了一个描述为"The leading Hello world App"的说明。我们还指定了项目的主要语言为C++。
接下来,我们使用add_executable命令添加了一个可执行文件HelloAppBinary,并将其与main.cpp文件关联起来。
最后,我们使用target_compile_features命令为HelloAppBinary目标设置了编译器的特性,这里我们指定了C++的标准为C++20。
关于project中的VERSION、DESCRIPTION,网上的解释如下(PS:我没有看到有这行信息输出):
在CMakeLists.txt文件中指定的项目版本可以在生成的构建系统中查看。具体来说,可以在构建过程中的输出中找到项目的版本信息。
例如,使用CMake构建项目时,在命令行或终端的输出中可以看到类似以下的信息:
-- Configuring project HelloApp version 0.0.1
这里的"HelloApp version 0.0.1"即是指定的项目版本信息。在实际的构建系统中,可能会有更详细的版本信息显示,具体取决于使用的构建工具和集成开发环境。
3、windows 下编译步骤
工具:Developer PowerSheel For VS2022
mkdir build
cd build
cmake ../source
接下来可以使用VS打开HelloApp.sln,或者直接在命令行里完成编译
运行