CMake应用教程

一、CMake简介

CMake是一个跨平台编译工具,它能够生成项目的Makefile用于接下来的make编译项目,最终生成可执行文件。CMake使得C++项目的组织和编译大大简化,开发人员不需要了解Makefile如何编写就能够自动生成,从而可以使用make工具对项目进行整体编译,生成可执行文件。

二、CMake使用方法

CMake在Windows与Linux上都有相应的发布版,用户安装CMake后需要配合编译器进行使用,例如Linux平台上是gcc和g++编译器,而Windows平台上是MSVC编译器。CMake有图形化界面以及命令行两种使用方式。

对于图形化界面,如下图所示:

CMake图形化界面

图中source code表示项目源码所在路径,而binaries表示编译结果生成到哪个目录,而图像中红色部分的选项则表示CMake在生成Makefile时可选的选项,通常包括增加编译哪些模块、编译的类型是Release还是Debug等。

对于命令行方式,相比于图形化界面而言相对较难,因为无法一览到所有的CMake编译时候的选项,命令行使用CMake如图所示:

CMake命令行显示版本信息

三、Hello CMake!

以上内容对CMake工具进行了简要的概述,下面将通过一个简单的例子来初步使用一下CMake。实验环境为Ubuntu20.04、CMake-3.21.7、Make-4.2.1、gcc-8.4.0、g++-8.4.0。

CMake版本与Make版本并不需要完全和本文统一,gcc与g++对应版本应当一致,比如gcc版本7.5.0,g++版本也应该为7.5.0。

3.1 构建C++项目

构建如图所示项目结构:

项目结构

build目录用于存放编译结果,CMakeLists.txt用于CMake编译项目,main.cpp为项目的源文件。

3.2 编写cpp源文件

main.cpp内容可以简单编写一个输出“Hello CMake!”字符串的程序,代码如下所示:

#include <iostream>

int main() {
    std::cout << "Hello CMake!" << std::endl;
    return 0;
}

3.3 编写CMakeLists.txt

CMakeLists.txt内容如下所示:

# 指定编译项目所需CMake的最小版本
cmake_minimum_required(VERSION 3.12)

# 指定项目的名称
project(hello_cmake)

# 设置C++的标准,这里使用C++14
set(CMAKE_CXX_STANDARD 14)

# 添加可执行文件,名称为hello_cmake,源文件为main.cpp,即编译该cpp文件后得到名为hello_cmake的可执行程序
add_executable(hello_cmake main.cpp)

3.4 编译运行

在Ubuntu终端打开项目的目录,依次运行如下命令:

mkdir build
cd build
cmake ..
make
./hello_cmake

命令依次运行完后效果如图所示:

至此,第一个CMake项目已经运行完成,能够运行完成代表大家已经对CMake工具以及C++项目的编译过程有了初步了解,之后我会继续更新有关CMake工具的使用,并搭配C++项目进行实现。

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值