• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
LOFLY
终其一生,编织快乐
博客园    首页    新随笔    联系   管理    订阅  订阅

CMAKE教程: 步骤1

CMake教程步骤1

CMAKE教程: 步骤1

步骤1 : 简单的开始

本步骤将引导你CMake's的基本语法、命令、和变量。 通过引入这些概念,我们就能使用Cmake来创建简单的CMake项目。

在这个步骤中,每个练习都会开始提供一些背景信息。接着,会给出一个目标以及一份有用的资源列表。在“Files to Edit”(待编辑的文件)部分中的每个文件都位于Step1目录中,并包含一个或多个TODO注释。每个TODO代表需要更改或添加的一两行代码。TODO应按照数字顺序完成,先完成TODO 1,然后是TODO 2,以此类推。在“Getting Started”(入门)部分中,将给出一些建议和指导,帮助你完成练习。然后,在“Build and Run”(构建和运行)部分将逐步介绍如何构建和测试练习。最后,在每个练习的结尾将讨论预期的解决方案。

请注意,教程中的每一步都建立在下一步的基础上。例如,Step2的起始代码是Step1的完整解决方案。

练习1 - 创建一个基本的项目

最基本的CMake项目是由单个源代码文件构建的可执行文件。对于像这样简单的项目,只需要在CMakeList.txt文件中写上3个命令就足够了。

注:CMAKE的命令支持大小写,以及混写。 教程中将一直使用小写。

任何项目的最顶层CMakeLists.txt文件必须使用cmake_minimum_required()命令来指定最低的CMake版本。这样可以建立策略设置,并确保后续的CMake函数在兼容的CMake版本下运行。

开始一个项目之前,我们使用 peoject()命令来设置项目名。这个命令是必需的,并且应该在cmake_minimum_required()之后尽快调用。正如我们后面将会看到的,这个命令还可以用来指定其他项目级别的信息,比如语言(language)或版本号(version number)。

最后, add_executable()命令来告诉CMake使用指定的源文件来创建一个可执行程序。

目标

了解怎样去创建一个简单的CMake项目。

有用的资源

  • add_executable()
  • cmake_minimum_required()
  • project()

编辑的文件

  • CMakeLists.txt

开始

tutorial.cxx的源代码位于Help/guide/tutorial/Step1目录中,可以用于计算一个数的平方根。在这一步骤中,不需要编辑这个文件。

在同一个目录中,有一个CMakeLists.txt文件需要你完成。从TODO 1开始,然后按照TODO 3的步骤进行操作。

构建和运行

完成TODO 1到TODO 3后,我们就准备好构建和运行项目了!首先,运行cmake可执行文件或者cmake-gui来配置项目,然后使用你选择的构建工具进行构建。

例如,我们可以从命令行导航到CMake源代码树的Help/guide/tutorial目录,然后创建一个构建目录:

mkdir Step1_build

接下来,进入该构建目录,并运行cmake来配置项目并生成本地的构建系统:

cd Step1_build
cmake ../Step1

然后调用构建系统来实际编译/链接项目:

cmake --build .

然后调用构建系统来实际编译/链接项目:

Tutorial 4294967296
Tutorial 10
Tutorial

答案

如上所述,我们只需要一个三行的CMakeLists.txt 文件就能够运行起来。第一行是使用cmake_minimum_required()来设置CMake的版本,如下所示:

ToDo 1: CMakeLists.txt

cmake_minimum_required(VERSION 3.10)

下一步是使用project()命令来设置项目名称,如下所示:

TODO 2: CMakeLists.txt

project(Tutorial)

最后一个命令是add_executable()。

TODO 3: CMakeLists.txt

add_executable(Tutorial tutorial.cxx)

直接运行上面的命令可能会出现错误,因为可能需要指定一下编译器:

https://blog.csdn.net/fengyuyeguirenenen/article/details/129332955

操作实践

上面几节描述没有指定编译器。下面是完整的CMakeLists.txt文件内容:

# TODO 1: Set the minimum required version of CMake to be 3.10
cmake_minimum_required(VERSION 3.10)

set (CMAKE_C_COMPILER "D:/app/mingw/mingw64/bin/gcc.exe")
set (CMAKE_CXX_COMPILER "D:/app/mingw/mingw64/bin/g++.exe")
# TODO 2: Create a project named Tutorial
project(Tutorial)
# TODO 7: Set the project version number as 1.0 in the above project command

# TODO 6: Set the variable CMAKE_CXX_STANDARD to 11
#         and the variable CMAKE_CXX_STANDARD_REQUIRED to True

# TODO 8: Use configure_file to configure and copy TutorialConfig.h.in to
#         TutorialConfig.h

# TODO 3: Add an executable called Tutorial to the project
add_executable(Tutorial tutorial.cxx)
# Hint: Be sure to specify the source file as tutorial.cxx

# TODO 9: Use target_include_directories to include ${PROJECT_BINARY_DIR}

命令行截图
命令中指定了Cmake构建makefile时的参数 "MinGW Makefiles", build目录与CMakeLits.txt属于同级目录。

image

posted @ 2023-07-30 22:14  编织快乐  阅读(51)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3