CMakeLists.txt编写示例

一个简单的示例,展示了如何为一个包含单个可执行文件和一个静态库的项目配置CMake构建系统。

项目结构
假设有以下项目结构:

MyProject/
├── CMakeLists.txt
├── src/
│   └── main.cpp
└── lib/
    └── math_utils.cpp
    └── math_utils.hpp

CMakeLists.txt内容
在项目的根目录下创建`CMakeLists.txt`文件,并填写以下内容:

cmake
cmake_minimum_required(VERSION 3.21)
project(MyProject)

# 设置变量指向源代码和头文件目录
set(SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
set(HEADERS_DIR ${SOURCE_DIR}/src)
set(LIBS_DIR ${SOURCE_DIR}/lib)

# 添加源文件到变量中
aux_source_directory(src SRC_LIST)
aux_source_directory(lib LIB_LIST)

# 创建可执行文件
add_executable(my_program ${SRC_LIST})

# 创建静态库
add_library(math_utils STATIC ${LIB_LIST})

# 将静态库链接到可执行文件
target_link_libraries(my_program math_utils)
构建说明
  1. cmake_minimum_required指定了CMake的最小版本要求,以确保兼容性。
  2. project定义了项目名称。
  3. set指令用于设置项目相关的变量,指向源代码和头文件目录。
  4. aux_source_directory命令递归地查找指定目录下的源文件,并将它们添加到列表变量中。
  5. add_executableadd_library分别用于创建可执行文件和静态库,并指定它们的源文件列表。
  6. target_link_libraries用于将静态库链接到可执行文件。
编译项目

在终端中,进入项目的根目录,创建一个名为build的目录,并在该目录中运行CMake来配置项目:

mkdir build
cd build
cmake ..

之后,运行make来编译项目:

make

编译完成后,可执行文件my_program将位于build目录下,您可以通过以下命令运行它:

./my_program
  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值