关于c++ 项目管理工具cmake 的使用

CMake是一个跨平台的开源构建系统,用于管理软件构建过程。通过CMakeLists.txt文件描述项目,支持添加子目录、引用外部包如OpenCV,并能链接库文件。CMake提供全局变量如CMAKE_SOURCE_DIR和CMAKE_CURRENT_BINARY_DIR,便于路径管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀 欢迎关注,加入学习交流群🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀
🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀 多位大佬加盟,助力学习 🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀
🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀 加群感受学习氛围! 🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀

什么是cmake

官方api

chatgpt 解释
CMake是一个跨平台的开源构建系统,用于控制软件构建过程的工具。它通过生成原生的构建文件来控制软件的编译过程,可以在不同的平台上生成多种不同的构建文件,如Makefile、Visual Studio解决方案等。CMake可以自动查找已安装的库和头文件,帮助用户配置工程,简化了构建过程。CMake使用CMakeLists.txt文件来描述软件构建过程。

  • 就是用cmakelists 来构建管理项目,实现跨平台开发编译

常用语法

cmake_minimum_required(VERSION 3.5) # 版本指定

project(ncnn_demo) # 项目名称

add_executable(ncnn_demo main.cpp) # 指定执行文件

引用外部包

set(OPENCV_DIR "cmake/OPENCV") # 指定路径
find_package(OPENCV REQUIRED) # 代表必须找到, 否则报错
  • 你所指定的地址必须啊,能找到一个类似opencvconfig.make 的配置文件(一般在你install会给到你 一般在install/lib下)

添加子目录

add_subdirectory(src)

代表添加src 为子目录, src下必须要有一个cmakelists.make文件

添加头文件目录

include_directories(...)

链接库文件

一般是找不到cpp文件的,需要你链接起来

target_link_libraries(target youcpp)

target 是主程序 youcpp 是库文件

常用的全局变量

CMAKE_SOURCE_DIR 当前cmakelists文件路径
CMAKE_CURRENT_SOURCE_DIR 源码路径
CMAKE_CURRENT_BINARY_DIR 二进制文件路径

message("当前源代码目录路径:${CMAKE_CURRENT_SOURCE_DIR}")
message("当前二进制目录路径:${CMAKE_CURRENT_BINARY_DIR}")

设置变量

set(PRO "hhh")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东哥aigc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值