Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
CMake, Tests & Tooling for C/C++ Projects [2026 Edition]
Bestseller
Highest Rated
Rating: 4.7 out of 5(2,158 ratings)
15,256 students

CMake, Tests & Tooling for C/C++ Projects [2026 Edition]

Master CMake, CI/CD, Unit Testing & Professional C++ Tooling – Build production-ready projects on Windows, Linux & Mac
Created byJan Schaffranek
Last updated 6/2026
English

What you'll learn

  • CMake (Command Line and GUI)
  • Create modern C/C++ Projects
  • Use external Projects via Git, Conan and VCPKG
  • Automate the HTML Documentation (Doxygen)
  • Unit Testing with Catch2
  • Code Coverage of the Unit Tests
  • Continuous Integration with Github Actions
  • Tooling: Clang-Format, Clang-Tidy, Cppcheck
  • Tooling: Sanitizer, Cmake-Format, Pre-Commit
  • VSCcode and VS 2022 with GCC, Clang and MSVC

Course content

6 sections67 lectures6h 24m total length
  • Introduction1:33

    Explore C and C++ tooling by installing essentials, building CMake projects, generating HTML documentation from code, managing libraries with konan, running tests, measuring code coverage, and automating with GitHub actions.

  • Windows: Software Installation - Part 10:12
  • Windows: Software Installation - Part 25:39

    Install and configure Windows Subsystem for Linux (WSL) with Ubuntu 20.04 on Windows, and set up CMake, Git, Python, and VS Code for C/C++ development with Visual Studio workflows.

  • Linux: Software Installation - Part 10:20
  • Linux: Software Installation - Part 22:27

    Install essential Linux development tools via apt on Debian/Ubuntu: a C/C++ compiler (>= v9), gdb, make, git, oxygen for documentation, Python 3.5, optional code-coverage tools, and Visual Studio Code.

  • Mac: Software Installation0:17
  • Course Guide0:52

    Download the final code from the UDM Make GitHub repository or clone it, install VS Code, and open the project while using the keyboard shortcuts document to follow along.

  • Course Materials0:08
  • Visual Studio Code Setup5:51

    Install and set up vscode, extract the project, open the folder, and install c/c++ extension pack; generate c++ config files and configure clang format and clang tidy in user settings.

  • Windows: WSL in VSCode2:46

    Learn to set up WSL in VS Code on Windows, install WSL extension, open projects in WSL, and configure coding tools and C++ extensions for C/C++ projects.

Requirements

  • C/C++ Basics
  • Commandline Basics

Description

Transform Your C/C++ Development Workflow – From Hobbyist to Professional

Can you write C++ code, but struggle with project structure, testing, and deployment? This course teaches you the professional workflows used at top tech companies – CMake, automated testing, continuous integration, and modern tooling.

What You'll Master:

Modern CMake from Scratch

  • Cross-platform builds for Windows, Linux, and macOS

  • Libraries, targets, and installation

  • Git submodules, Conan, and VCPKG for dependencies

  • CMake GUI for visual project configuration

Testing & Quality Assurance

  • Unit testing with Catch2

  • Code coverage measurement and visualization

  • Continuous Integration with GitHub Actions

  • Sanitizers for runtime checks (memory leaks, undefined behavior)

Professional C++ Tooling

  • Clang-Tidy – Static analysis for bug detection

  • Clang-Format – Automatic code formatting

  • Cppcheck – Additional static analysis

  • cmake-format – Clean CMakeLists.txt files

  • Pre-commit hooks – Enforce quality before commits

Documentation & Optimization

  • Doxygen for automated HTML documentation

  • Link Time Optimization (LTO) for performance

  • Debugging techniques across compilers

  • VSCode and Visual Studio 2022 integration

Cross-Compiler Support:

Works with GCC, Clang, and MSVC – Learn once, use everywhere.

Who Is This Course For?

Perfect for:

  • C/C++ developers ready to build professional projects

  • Engineers transitioning to industry-standard workflows

  • Students preparing for software engineering roles

  • Developers maintaining legacy codebases

  • Anyone wanting production-ready C++ skills

Prerequisites:

  • C/C++ basics (functions, classes)

  • Basic command-line experience

  • Willingness to learn professional tools

What You'll Achieve:

  • Set up cross-platform C++ projects with CMake

  • Write and automate unit tests with code coverage

  • Implement CI/CD pipelines with GitHub Actions

  • Use professional code quality tools

  • Generate documentation automatically

  • Deploy production-ready software

Why This Matters:

Industry Standard – CMake is the de-facto build system for C++
Job Requirement – These skills appear in job postings
Time Saver – Automation reduces manual work
Quality Insurance – Catch bugs before they reach users

Course Details:

6.5 hours of focused content – 67 lectures in 6 sections
Bestseller – 14,000+ students, 4.5-star rating
Updated November 2024 – Latest tools and practices
Full project template – Start your projects right

Elevate your C++ career – with 30-day money-back guarantee!

See you in class!

Who this course is for:

  • Every C and C++ Programmer