本入门练习参考CMake官网(https://cmake.org/cmake/help/latest/guide/tutorial/index.html)中的Step 1: A Basic Starting Point
本入门练习的系统是windows10,已安装viusal studio 2019(c++)和 Cmake-gui。
///
第一步:在自己的工作目录下如:( E:/TEMP )新建一个项目文件夹如:( tutorial )
///
第二步:在项目文件夹内,新建如下3个文件:
1. 文本文件:CMakeLists.txt,代码如下:
cmake_minimum_required(VERSION 3.10)
# set the project name and version
project(tutorial VERSION 1.0)
# specify the C++ standard
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED True)
# add the executable
add_executable(tutorial tutorial.cxx)
代码做了如下事情:
# 设置项目的名称是“tutorial”,版本是1.0;
# 指定项目使用的C++11标准;
# 设置项目输出的可执行文件名为“tutorial”(也可以是其它例如:mytutorial),对应的源码文件是“tutorial.cxx"
2. 源代码文件:tutorial.cxx,代码如下:
//#include
#include "TutorialConfig.h"
#include // std::cout
#include // std::stod
int main(int argc, char** argv) {
const double inputValue = std::stod(argv[1]);
if (argc < 4) {
// report version
std::cout << argv[0] << " Version " << Tutorial_VERSION_MAJOR << "."
<< Tutorial_VERSION_MINOR << std::endl;
std::cout << "Usage: " << argv[0] << "("<
代码主要做的事情是:
如果输入的参数小于4个,则输出程序名称及版本号,并输出可执行程序名及输入的第2个参数
否则什么都不做
3. 头文件TutorialConfig.h,代码如下:
// the configured options and settings for Tutorial
#define Tutorial_VERSION_MAJOR "1.0"
#define Tutorial_VERSION_MINOR "0"
代码定义了程序的大、小版本号
///
第三步:打开CMake gui,source code 和 binaries 的路径均选择本项目文件夹(E:/TEMP/tutorial),点击Configure
在弹出的窗口中选择Visual Studio 16 2019,其它选项默认,点击Finish
开始配置,结束后如图:
此时文件夹内多了一些文件及文件夹
点击Generate,生成项目
项目生成后,项目文件夹内容如下:
此时,项目已经生成,可以开始使用VS2019编译源码,生成可执行文件了。
///
第四步:用VS2019编译源码,生成可执行文件
1. 双击项目文件夹内的 tutorial.sln (或 点击CMake 界面的 Open Project 按钮),VS2019即可打开并加载tutorial项目。
VS2019打开后如下:
2. 右键点击ALL_BUILD,在弹出菜单中点击 Build,VS开始编译并生成可执行程序,build结束后如下:
此时,项目文件夹内容如下:
进入Debug文件夹,可见如下文件:
第五步:测试(使用)可执行文件
3. 打开cmd.exe, 进入项目文件夹Debug文件夹(exe文件所的文件夹)
输入:tutorial 1 2
输出:
tutorial Version 1.0.0
Usage: tutorial(1)
输入输出参考下图:
///
第六步:在VS2019中修改、调试项目(举例)
1. 将头文件TutorialConfig.h加入工程中
2. 修改头文件TutorialConfig.h代码如下:
3. 重新执行 ALL_BUILD —— Build
4. 测试可执行程序
在cmd.exe 中
输入:tutorial 1 2
输出:
tutorial Version 1.0.1
Usage: tutorial(1)
如下图所示: