用途:该技能面向 C++ 构建基础设施,帮助开发者掌握构建系统、包管理与 CI/CD 集成,适用于需要跨平台编译、依赖管理与持续集成的 C++ 项目。
主要能力:
- 现代 CMake 模式:基于 target 的配置,包含全局设置(C++20、CMAKE_EXPORT_COMPILE_COMMANDS)、选项(BUILD_TESTING、ENABLE_SANITIZERS 等)、警告接口库与 sanitizer 接口库。
- 依赖管理:支持 FetchContent(CMake 3.14+)、Conan 2.x(conanfile.py、CMakeDeps、cmake_layout)与 vcpkg(manifest 模式 vcpkg.json)。
- 跨平台构建:提供工具链文件示例(linux-clang、windows-mingw),以及按 WIN32/APPLE/其他平台选择源文件与编译定义。
- CI/CD:给出 GitHub Actions 与 GitLab CI 配置示例,含多 OS/编译器/构建类型矩阵、ctest 测试与覆盖率上传。
- 参考与排查:编译器标志对照表(GCC/Clang 与 MSVC)、构建工作流图、故障排查决策树与常见构建错误表。
使用方式:
- Conan 构建:conan install . --output-folder=build --build=missing,然后 cmake -B build -DCMAKE_TOOLCHAIN_FILE=build/conan_toolchain.cmake,再 cmake --build build。
- vcpkg 构建:cmake -B build -DCMAKE_TOOLCHAIN_FILE=$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake,然后 cmake --build build。
- 工具链文件用法:cmake -B build -DCMAKE_TOOLCHAIN_FILE=toolchain/linux-clang.cmake。
- CI 中常用:cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=...,cmake --build build --parallel,ctest --test-dir build --output-on-failure --parallel。
适用场景:C++ 项目的构建配置、依赖引入、跨平台编译、CI 流水线搭建与构建问题排查。
限制:资料未提供具体收费、价格、平台支持范围或效果保证;部分命令与配置需按实际项目调整,缺失事实暂未提供。