## 什么是CMake?
### 简介
CMake通过CMakeLists.txt文件定义构建规则,支持跨平台编译(Windows/Linux/macOS)、依赖管理、第三方库集成。招聘中常用于评估候选人对软件工程流程的理解能力,常见于系统开发、游戏引擎、嵌入式等岗位需求。
### 职业方向
初级开发工程师→中级开发工程师→高级开发工程师→架构师
构建工程师→CI/CD工程师→DevOps工程师→技术经理
### 核心技能
CMakeLists.txt编写规范
跨平台编译配置
第三方库集成(如OpenCV、Boost)
CTest单元测试框架
CPack打包工具
与Git Subversion版本控制集成
### 相关技能
[Makefile编写](https://s.niuqizp.com/s_campus_Makefile%E7%BC%96%E5%86%99/?ur=article), [Meson](https://s.niuqizp.com/s_campus_Meson/?ur=article), [Bazel](https://s.niuqizp.com/s_campus_Bazel/?ur=article), [Gradle](https://s.niuqizp.com/s_campus_Gradle/?ur=article), [Jenkins GitLab CI](https://s.niuqizp.com/s_campus_Jenkins%20GitLab%20CI/?ur=article), [Git版本控制](https://s.niuqizp.com/s_campus_Git%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6/?ur=article)
### 相关专业
[计算机科学与技术](https://s.niuqizp.com/s_campus_%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%A7%91%E5%AD%A6%E4%B8%8E%E6%8A%80%E6%9C%AF/?ur=article), [软件工程](https://s.niuqizp.com/s_campus_%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B/?ur=article), [电子工程](https://s.niuqizp.com/s_campus_%E7%94%B5%E5%AD%90%E5%B7%A5%E7%A8%8B/?ur=article), [信息工程](https://s.niuqizp.com/s_campus_%E4%BF%A1%E6%81%AF%E5%B7%A5%E7%A8%8B/?ur=article), [自动化](https://s.niuqizp.com/s_campus_%E8%87%AA%E5%8A%A8%E5%8C%96/?ur=article)
### 相关证书
[无独立认证](https://s.niuqizp.com/s_campus_%E6%97%A0%E7%8B%AC%E7%AB%8B%E8%AE%A4%E8%AF%81/?ur=article), [可结合C++认证(如C++17 C++20)](https://s.niuqizp.com/s_campus_%E5%8F%AF%E7%BB%93%E5%90%88C%2B%2B%E8%AE%A4%E8%AF%81%EF%BC%88%E5%A6%82C%2B%2B17%20C%2B%2B20%EF%BC%89/?ur=article), [DevOps相关认证(如AWS Certified DevOps Engineer)](https://s.niuqizp.com/s_campus_DevOps%E7%9B%B8%E5%85%B3%E8%AE%A4%E8%AF%81%EF%BC%88%E5%A6%82AWS%20Certified%20DevOps%20Engineer%EF%BC%89/?ur=article)
### 相关岗位
[C C++开发工程师](https://s.niuqizp.com/s_campus_C%20C%2B%2B%E5%BC%80%E5%8F%91%E5%B7%A5%E7%A8%8B%E5%B8%88/?ur=article), [技术类](https://s.niuqizp.com/s_campus_%E6%8A%80%E6%9C%AF%E7%B1%BB/?ur=article), [计算机软件 硬件 服务](https://s.niuqizp.com/s_campus_%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%BD%AF%E4%BB%B6%20%E7%A1%AC%E4%BB%B6%20%E6%9C%8D%E5%8A%A1/?ur=article), [嵌入式系统工程师](https://s.niuqizp.com/s_campus_%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E5%B7%A5%E7%A8%8B%E5%B8%88/?ur=article), [电子 电路 半导体](https://s.niuqizp.com/s_campus_%E7%94%B5%E5%AD%90%20%E7%94%B5%E8%B7%AF%20%E5%8D%8A%E5%AF%BC%E4%BD%93/?ur=article), [自动化构建工程师](https://s.niuqizp.com/s_campus_%E8%87%AA%E5%8A%A8%E5%8C%96%E6%9E%84%E5%BB%BA%E5%B7%A5%E7%A8%8B%E5%B8%88/?ur=article), [互联网](https://s.niuqizp.com/s_campus_%E4%BA%92%E8%81%94%E7%BD%91/?ur=article), [游戏引擎开发工程师](https://s.niuqizp.com/s_campus_%E6%B8%B8%E6%88%8F%E5%BC%95%E6%93%8E%E5%BC%80%E5%8F%91%E5%B7%A5%E7%A8%8B%E5%B8%88/?ur=article), [娱乐 休闲 体育 生活服务](https://s.niuqizp.com/s_campus_%E5%A8%B1%E4%B9%90%20%E4%BC%91%E9%97%B2%20%E4%BD%93%E8%82%B2%20%E7%94%9F%E6%B4%BB%E6%9C%8D%E5%8A%A1/?ur=article)
### 求职建议
应届生应重点掌握CMake基础语法与项目结构,通过GitHub参与开源项目实践(如ROS、VTK)。建议熟悉常见构建错误排查(如路径问题、依赖冲突),了解持续集成(CI)流程配置。应聘时需准备完整的CMake项目案例,展示跨平台构建能力。