Learning CMake Training Course

Last updated

Course Code



14 hours (usually 2 days including breaks)


  • C++ programming experience


  • Software Engineers


CMake is an open source tool for managing the development lifecycle of software through a compiler-independent method. Using CMake, users can create several builds from the same source code without affecting the source code.

This instructor-led, live training (online or onsite) is aimed at software engineers who wish to use CMake to automate the build process in a cross-platform environment.

By the end of this training, participants will be able to:

  • Build, test, and package software with CMake.
  • Control the software compilation process.
  • Use CMake in conjunction with a native build environment.
  • Address common build system issues.

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.

Course Outline


CMake Overview

  • What is CMake?
  • CMake features
  • CMake architecture

Preparing the Development Environment

  • Installing and configuring CMake

CMake Quick Start

  • Adding a version number and configured header file
  • Enabling support for C++
  • Building and testing


  • Adding libraries
  • Adding usage requirements

Installing and Testing

  • Working with install rules
  • Testing the application

System Introspection

  • Adding system introspection
  • Specifying compile definitions

Advanced CMake

  • Adding custom command line and generated files
  • Building installers
  • Adding dashboard support
  • Fusing static and shared
  • Working with generated expressions


  • Packaging debug and release

Deploying the Application

  • Adding export configuration

Securing the Application

  • Hardening CMake builds


Summary and Conclusion



Related Categories

Related Courses

Course Discounts

Course Discounts Newsletter

We respect the privacy of your email address. We will not pass on or sell your address to others.
You can always change your preferences or unsubscribe completely.

Some of our clients

This site in other countries/regions