0%

CMAKE安装与命令,Makefile编写

原文链接:CMAKE安装与命令,Makefile编写

介绍

CMake 是一种跨平台的开源工具,用于使用独立于编译器的方法来管理软件的构建过程。 CMake 生成可在您选择的编译器环境中使用的本机 makefile 和工作区。

优点

• 从简单的配置文件生成本机构建环境(Unix makefile、Visual Studio 项目、Xcode 项目等)。
• 查找和使用第三方库。 CMake 自带模块来查找流行的库,如 Boost、OpenSSL、Python 等。您也可以编写自己的查找模块。
• 为您的项目创建安装程序。 CMake 可以生成 makefile 和项目来为 Linux、Windows 和 macOS 等平台创建安装程序。
• 支持就地和外源构建。
• 通过一次CMake 调用生成构建的调试和发布版本。
• 为几个主要的 IDE 配置文件,如 Visual Studio、XCode、Eclipse 等。

安装

  1. apt安装卸载

    1
    2
    sudo apt install cmake
    sudo apt autoremove cmake
  2. 官网找到指定版本文件下载安装到指定的目录或者源码编译

命令

1

CMakeLists.txt

CMakeLists.txt 文件是使用 CMake 时项目的构建规范。 它们包含构建项目所需的所有命令和配置设置。
一个基本的 CMakeLists.txt 文件包含如下内容:

  • 指定所需的最低 CMake 版本
  • 添加子目录
  • 链接库
  • 指定编译器标志
  • 添加可执行文件和测试目标
  • 和更多…
    CMakeLists.txt 文件的结构通常如下所示:
    制作

设置最低 CMake 版本

cmake_minimum_required(版本 3.10)

添加子目录

添加子目录(src)

链接一些库

查找包(OpenSSL)
target_link_libraries(我的目标 OpenSSL::SSL)

添加可执行文件

add_executable(myprogram src/main.c)

添加测试

add_test(命名我的测试命令我的程序)
CMakeLists.txt 文件中使用的一些常用命令是:

  • project() - 定义项目名称和版本
  • add_executable() - 添加一个可执行目标
  • add_library() - 添加库目标
  • find_package() - 查找外部库
  • target_link_libraries() - 将目标链接到库
  • add_subdirectory() - 添加一个带有自己的 CMakeLists.txt 的子目录
  • add_test() - 添加测试目标
  • set() - 设置一个变量
  • option() - 提供一个选项供用户选择
  • include_directories() - 添加包含目录
  • add_definitions() - 添加预处理器定义
    还有很多。 CMake 有很多有用的内置命令和函数来配置您的构建。
    CMakeLists.txt 文件本质上充当项目的构建脚本。 它们应该被编写为可跨平台和编译器移植。 通过编写与平台无关的 CMake 构建规范,您可以使用 CMake 生成本机 makefile、Visual Studio 解决方案、Xcode 项目等以构建您的项目。