全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

C++ CMake怎么用?C++项目构建工具CMake入门指南【工程必备】

CMake构建C++项目核心三步:写CMakeLists.txt(含cmake_minimum_required、project、add_executable)、在build目录中运行cmake生成本地构建文件、用make/ninja/cmake--build编译运行。

用 CMake 构建 C++ 项目,核心就三步:写 CMakeLists.txt、生成构建文件、编译运行。它不直接编译代码,而是生成 Makefile(Linux/macOS)或 Visual Studio 工程(Windows)等本地构建系统所需的配置,真正跨平台的关键就在这儿。

写好 CMakeLists.txt:项目的“蓝图”

这是 CMake 的入口文件,放在项目根目录。最简结构只需三行:

  • cmake_minimum_required(VERSION 3.10) —— 声明最低 CMake 版本,避免语法不兼容
  • project(MyApp LANGUAGES CXX) —— 定义项目名和语言(CXX 表示 C++)
  • add_executable(MyApp main.cpp) —— 指定可执行文件名和源文件

如果用了头文件、多个源码或第三方库,再加 include_directories()target_include_directories()(推荐)、find_package()target_link_libraries() 即可。注意:路径尽量用相对路径,别写死绝对路径。

生成构建文件:用 cmake 命令“翻译”配置

不要在源码目录里直接运行 cmake,养成新建 build/ 子目录的习惯:

  • mkdir build && cd build
  • cmake .. —— 默认生成 Unix Makefiles(Linux/macOS)
  • cmake -G "Visual Studio 17 2025" .. —— Windows 下生成 VS 工程(版本按实际调整)
  • cmake -G "Ninja" .. —— 更快的 Ninja 构建器(需提前安装)

成功后,build 目录里会出现 Makefile、compile_commands.json 或 .sln 等文件,这才是后续编译的依据。

编译与运行:和本地工具链打交道

生成完,就用对应构建工具执行:

  • Linux/macOS(Makefiles):make 编译,./MyApp 运行
  • Linux/macOS(Ninja):ninja 编译,./MyApp 运行
  • Windows(VS):cmake --build . 或直接打开 .sln 用 VS 图形界面编译
  • 通用方式(推荐):cmake --build . —— 自动适配当前生成器,不用记 make/ninja/msbuild

想清理?删掉整个 build 目录就行,CMake 没有“make clean”式命令,也不需要。

小技巧:让开发更顺手

  • cmake -DCMAKE_BUILD_TYPE=Debug .. 控制构建类型(Debug/Release),影响优化和调试信息
  • 第三方库装在系统路径(如 /usr/local)时,加 -DCMAKE_PREFIX_PATH=/usr/local 帮 CMake 找到它
  • 编辑 CMakeLists.txt 后,不用删 build 目录重来,直接进 build 目录再运行一次 cmake .. 就能更新配置
  • cmake-gui 或 CLion/VS Code 的 CMake 插件,可视化配置变量,适合新手排查问题

基本上就这些。不复杂,但容易忽略目录分离和构建类型设置——这两点踩过坑的人最多。


# linux  # js  # json  # windows  # app  # 工具  # mac  # ai  # unix  # c++  # macos  # win  # visual studio  # 第三方  # 三步  # 的人  # 这是  # 也不  # 放在  # 就在  # 就能  # 多个  # 最多 


相关文章: 猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?  如何在万网主机上快速搭建网站?  如何有效防御Web建站篡改攻击?  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  娃派WAP自助建站:免费模板+移动优化,快速打造专业网站  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  网站按钮制作软件,如何实现网页中按钮的自动点击?  如何通过多用户协作模板快速搭建高效企业网站?  齐河建站公司:营销型网站建设与SEO优化双核驱动策略  如何用西部建站助手快速创建专业网站?  MySQL查询结果复制到新表的方法(更新、插入)  定制建站模板如何实现SEO优化与智能系统配置?18字教程  婚礼视频制作网站,学习*后期制作的网站有哪些?  教育培训网站制作流程,请问edu教育网站的域名怎么申请?  实惠建站价格推荐:2025年高性价比自助建站套餐解析  建站之星IIS配置教程:代码生成技巧与站点搭建指南  如何通过PHP快速构建高效问答网站功能?  免费网站制作appp,免费制作app哪个平台好?  广州顶尖建站服务:企业官网建设与SEO优化一体化方案  教程网站设计制作软件,怎么创建自己的一个网站?  创业网站制作流程,创业网站可靠吗?  七夕网站制作视频,七夕大促活动怎么报名?  ui设计制作网站有哪些,手机UI设计网址吗?  湖北网站制作公司有哪些,湖北清能集团官网?  重庆网站制作公司哪家好,重庆中考招生办官方网站?  小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?  如何配置支付宝与微信支付功能?  为什么Go需要go mod文件_Go go mod文件作用说明  义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?  平台云上自主建站:模板化设计与智能工具打造高效网站  如何获取免费开源的自助建站系统源码?  移民网站制作流程,怎么看加拿大移民官网?  如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法  如何制作算命网站,怎么注册算命网站?  宠物网站制作html代码,有没有专门介绍宠物如何养的网站啊?  如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?  建站之星代理费用多少?最新价格详情介绍  网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?  装修招标网站设计制作流程,装修招标流程?  制作网站的网址是什么,请问后缀为.com和.com.cn还有.cn的这三种网站是分别是什么类型的网站?  建站之星代理如何获取技术支持?  清除minerd进程的简单方法  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  如何在云指建站中生成FTP站点?  如何在西部数码注册域名并快速搭建网站?  盐城做公司网站,江苏电子版退休证办理流程?  太平洋网站制作公司,网络用语太平洋是什么意思?  活动邀请函制作网站有哪些,活动邀请函文案?  网站制作免费,什么网站能看正片电影?  网站制作难吗安全吗,做一个网站需要多久时间? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。