Udemy

Complete CMake Project Management [2026]

Enroll Now
  • 735 Students
  • Updated 1/2026
4.2
(114 Ratings)
CTgoodjobs selects quality courses to enhance professionals' competitiveness. By purchasing courses through links on our site, we may receive an affiliate commission.

Course Information

Registration period
Year-round Recruitment
Course Level
Study Mode
Duration
3 Hour(s) 24 Minute(s)
Language
English
Taught by
Hristo Iliev
Rating
4.2
(114 Ratings)

Course Overview

Complete CMake Project Management [2026]

Learn CMake to manage your C/C++ project! As well as how to manage dependencies, unit tests, tools and more easily.

Reviews:

"Awesome course. I wanted to learn CMake a long time ago, but every time I tried to learn, I just felt overwhelmed by the sources. This course gives a really good step-by-step approach, with a good didactic." - Andre Aranha

"Totally recommend this course; the mentor teaches each and ever aspect of CMake also he answers every query"—Million Stinger_S

"Very knowledgeable instructor! If you're interested in C and/or C++, even as a hobby, you'll need to learn CMake. This course covers everything you need to start and work on both small and large projects. It includes topics like dependency management, testing, and packaging. You can't go wrong with this one." - Fellipi Carmo

"The course is suitable for beginners and advanced users who want to improve their CMake knowledge." - Victor Stoykov

Description:

This course is all about CMake. CMake is an application that helps you structure C/ C++-based native projects, generate build commands for the target platform, build your application, pack it into an installer, install it, test it, and it will even help you with managing your dependencies.

In this course, you will learn:

  • How to use CMake to structure and compile your C/C++ projects

  • How to manage your dependencies

  • How to get your project compiled for the web using Emscripten

  • How to include unit tests and test your application

  • How to customize the build pipeline with your own tools (if you want to do your own custom build steps)

  • How to compile other projects that support CMake and even ones that do not

  • How to install and package your project

  • Bonus snippets include some advanced setups like documentation using Doxygen

In the end, you will have all the knowledge needed to be able to open up a random CMake project and compile it yourself. You will also be able to confidently start and write your own CMake scripts for your projects. This will elevate your programming experience with the low-level C/C++ languages, and it will also simplify a lot of the hard concepts related to those languages.


This course is primarily taught on the Windows OS, but the knowledge gained can easily translate into other operating systems as well.

Course Content

  • 13 section(s)
  • 75 lecture(s)
  • Section 1 Introduction
  • Section 2 Setup
  • Section 3 Prerequisites
  • Section 4 First Contact
  • Section 5 The CMake Language
  • Section 6 Building Projects
  • Section 7 Dependency Management
  • Section 8 Compiling for the Web
  • Section 9 Running Tools
  • Section 10 Testing & CTest
  • Section 11 Installation & CPack
  • Section 12 Course Updates
  • Section 13 Code snippets and Bonus materials

What You’ll Learn

  • CMake (CLI, GUI and with IDEs), Linking external libraries with VCPKG, Git and through subdirectories, Create simple C/C++ build commands and structure, Running Executables, Shell scripts, CMake scripts or Python on build, Cross-compiling via Emscripten Toolchains for the web, Use with IDEs - Visual Studio, VS Code, CLion, Packaging the project with an install wizard or directly installing it, Unit Testing: without a framework, with Catch2 or with GoogleTest, Embedding, copying and configuring files on build, Creating code graphs with GraphViz, Analyzing your code through CppCheck, Add a compiler runner like CCache for faster builds


Reviews

  • M
    Matthew Freedman
    1.0

    THIS COURSE IS PC/WINDOWS ONLY - LINUX AND MAC USERS DO NOT PURCHASE This class is taught entirely on PC with PC only versions of CMake which has different file structures, files created, executables created, variable naming, etc. There are entirely different sets of commands and files in which to put those commands in many of the sections in this class and those difference are never shown. CMAKE is not the same on Linux or MacOS and those differences are never addressed or even mentioned because THIS CLASS IS TAUGHT FOR MICROSOFT OS USERS ONLY. It is not shown how to do similar things on other platforms so if you are not on Windows, DO NOT BUY THIS COURSE. As to the instructors response to me, requiring every single mac or linux user to ask him for help is not practical. This should be in the actual course material so it is usable for all operating platforms - especially because the course description specifically says it works for iOS, but it does not. Even beyond that, it is a tutorial, not an actual course. Talk to ChatGPT and you will get way more help than the money you would spend on this, even for windows users. The fact that the instructor responded calling this 'hate speech' shows he is not worth listening to or spending your money on. Ask ChatGPT to give you a walk-through for free, you'll learn waaaaay more than this class has to offer. It really is absolutely worthless. Its a demo walk-through not an actual class.

  • B
    Brian Price
    4.0

    Good introductory course. CMake can do many things, so it was helpful to just have the basics to get started. The PRIVATE and PUBLIC declarations are still confusing. Maybe a little more time spent in this area.

  • A
    Adrian Poston
    5.0

    Very disappointed. I purchased this course to ultimately understand how to config/link/include 3rd party precompiled libraries such as SFML with my Windows projects. The instructor rushes through this process {building with non-cmake libraries} while spending too much time on more nuance features like loops and lists. I recommend he spend more time on building real projects and placing these lesser used features in perspective. He jumps from beginner explanations to advanced/experienced concepts. He also goes back and forth between VS code and Visual Studio which is also confusing. I got the course on sale and NO WAY is it worth full price. I recommend saving your money and sticking with YouTube and StackOverFlow. After some additional time and learning I now find this course very helpful. I started as a real newbie and CMAKE can be a bit overwhelming. I had to get a foot hold to appreciate this course and now I do. Thanks

  • T
    Terrence Michael Conrad
    5.0

    It has been a great match for me, the course is covering much more than I expected and has been of great value to me. The language clarity is a little difficult at times but he still gets the point across and I am watching at high video speed.

Start FollowingSee all

We use cookies to enhance your experience on our website. Please read and confirm your agreement to our Privacy Policy and Terms and Conditions before continue to browse our website.

Read and Agreed