Ubuntu22 CMake安装使用教程

1. CMake 简介

CMake 是一个跨平台的自动化构建系统工具,它被用来管理和控制软件构建过程。CMake 使用一个称为 CMakeLists.txt 的文本文件来描述项目的构建过程。这个文件包含了项目所需的各种设置和指令,比如源文件的位置、编译选项、链接器选项等。CMake 并不是一个编译器,而是一个前端工具,它可以生成不同构建系统的脚本,如 Unix Makefiles、Ninja build files、MSBuild project files 等,这样就可以在不同的操作系统和编译环境中构建项目。

CMake 的主要特点包括:

  • 跨平台:可以在 Windows、macOS 和 Linux 上运行。
  • 灵活性:支持多种编译器,如 GCC、Clang、Visual Studio 等。
  • 功能丰富:支持复杂的项目结构,可以定义模块、库、可执行文件以及测试用例等。
  • 社区支持:拥有庞大的社区支持和丰富的第三方模块库。

2. CMake 安装

CMake 目前最新版本是3.30,在 Ubuntu22 的高级软件包管理器 apt 中自带的 cmake 版本是3.22,一般使用系统自带的版本就行,如果有特定版本需求,则需要去官网下载。

简便方式:使用apt安装

# 更新包列表
sudo apt update

# 下载 CMake
sudo apt install cmake -y

去官网下载安装:

官网网址

Linux系统最新版本下载连接:CMake_3.30

历史版本:版本列表

安装步骤

解压下载的文件: 将下载的压缩包放到一个合适的目录(如 /usr/local 或者你的主目录),然后解压它:

tar -zxvf cmake-version.tar.gz

移动到安装目录: 解压后,进入解压后的目录,然后将 CMake 移动到一个系统路径中,例如 /usr/local:(version替换为实际版本号)

cd cmake-version
sudo mv bin /usr/local

​​​​​​设置环境变量: 如果你需要的话,可以将 CMake 的二进制文件路径添加到环境变量 PATH 中。通常情况下,如果将 bin 目录移动到了 /usr/local,那么应该已经在这个路径中了。但为了确保,你可以编辑 ~/.bashrc 文件(针对当前用户)或者 /etc/environment(针对所有用户):

echo 'export PATH=/usr/local/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

验证安装: 安装完成后,可以通过运行以下命令来验证 CMake 是否正确安装:

cmake --version

这将显示安装的 CMake 的版本号。如果一切正常,你现在就可以开始使用 CMake 了。请注意替换上述命令中的 cmake-versioncmake-version.tar.gz 为实际下载的版本号。

3. CMake 使用

CMake 项目中,必不可少的是 CMakeLists.txt 文件,基于此可以让 cmake 帮你编写一个 Makefile 文件而无需你手动编写。

首先,我们构建一个基本的 cmake 项目。

目录结构:

zpy@Ubuntu-22:~/cmake_project$ tree ../cmake_project/
../cmake_project/
├── build
├── CMakeLists.txt
├── include
└── src

build:存放构建后的文件,包括可执行文件,Makefile文件等

include:存放头文件

src:存放源文件

CMakeLists.txt:cmake 项目配置信息

CMakeLists.txt 文件编写示例:

cmake_minimum_required(VERSION 3.10)  # 设置所需的 CMake 最低版本
project(cmake_project VERSION 1.0)     # 定义项目名称和版本号

# 指定 C/C++ 标准
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED True)

# 添加可执行文件,test为可执行文件名
add_executable(test ${PROJECT_SOURCE_DIR}/src/*.cpp)

# 指定头文件的包含目录
include_directories(${PROJECT_SOURCE_DIR}/include)

头文件不是必须的,但源文件一定要有。

编译构建:

# 进入 build 目录
cd build

# 使用 cmake 生成 Makefile 文件
cmake ..

# 编译生成可执行文件
make

# 运行可执行文件
./test

你可能感兴趣的:(linux,c++,c语言,ubuntu)