Master CMake for Cross-Platform C++ Project Building
- Development
- Mar 19, 2025

Master CMake for Cross-Platform C++ Project Building, available at $74.99, has an average rating of 4.4, with 48 lectures, 7 quizzes, based on 2223 reviews, and has 11082 subscribers.
You will learn about CMake Commands and Terminologies Importance of Make and CMake Importing and Exporting Packages CMakes Scripting Mode Configure Project Building using Cache Variables Linking against External Libraries This course is ideal for individuals who are Beginners, interested in learning the build process of C or C++ projects or Anyone, who wants to understand the CMakeLists files written by the community It is particularly useful for Beginners, interested in learning the build process of C or C++ projects or Anyone, who wants to understand the CMakeLists files written by the community.
Enroll now: Master CMake for Cross-Platform C++ Project Building
Summary
Title: Master CMake for Cross-Platform C++ Project Building
Price: $74.99
Average Rating: 4.4
Number of Lectures: 48
Number of Quizzes: 7
Number of Published Lectures: 46
Number of Published Quizzes: 7
Number of Curriculum Items: 55
Number of Published Curriculum Objects: 53
Original Price: $19.99
Quality Status: approved
Status: Live
What You Will Learn
Who Should Attend
Target Audiences
Learning CMake was never so easy!
Welcome to the course Master CMake for Cross-Platform C++ Project Building, where you will learn the CMake tool from the beginning. After completing this course, you’ll be able to
Build CMake based projects,
Export your project, and
Link your executable against any CMake/ Non-Cmake based library
Enroll Now and enjoy the 3.5-hours ride to learn the most powerful way of building the C++ projects.
This course is made after extensive research on Stackoverflow, Quora, Reddit, Youtube,and other Q&A websites to handpick the concepts which are difficult to understand for the beginners. The course starts with compiling a simple C++ code; and, over the modules, various functionalities are added as the complexity increases.
The broad outline of the course is as follows:
-
Section 1:
-
Problems associated with NOT using a build system
-
Difference betweena build system (Make) and a meta-build system (CMake).
-
-
Section 2:
-
Installation of CMake
-
First executableusing the CMake
-
-
Section 3:
-
Managing large projects using sub-directories
-
-
Section 4:
-
Variables, Lists, and Strings
-
Scripting Capabilitiesof CMake
-
-
Section 5:
-
Flow Controlcommands (If-else commands and the Loops)
-
Functions, Scopes, Macros, Modules,and Listfiles.
-
-
Section 6:
-
Configuring a project using Cache Variables
-
Concept of Libraries
-
Using Ninja Build System with CMake
-
-
Section 7:
-
Installation a package that is developed by someone else
-
Export our package so that someone else can use it
-
-
Section 8:(Read through Section)
-
Miscellaneous small concepts, FAQs and tips
-
-
Section 9:
-
Problems while installing and using External Libraries
-
Using External Libraries developed using both CMake and Non-CMake based build systems
-
Enroll Now and enjoy the 3.5-hours ride to learn the most powerful way of building the C++ projects.
Course Curriculum
Chapter 1: Introduction
Lecture 1: Before You Begin
Lecture 2: Building a C++ Project using G++
Lecture 3: Need of Build Systems
Lecture 4: Need of Meta Build System
Chapter 2: CMake Installation and Building the First Target
Lecture 1: CMake Installation
Lecture 2: Build Files Generation Process
Lecture 3: Generating the First Executable using CMake
Lecture 4: Generating the First Library
Lecture 5: Targets Properties and Dependencies
Lecture 6: FAQ on Targets
Chapter 3: Managing Project Files and Folders using Subdirectories
Lecture 1: Sub-directories
Lecture 2: Managing Header Files
Lecture 3: CMake way of Including the Header Files
Lecture 4: Target Properties and Propagation Scopes
Lecture 5: Propagation of Target Properties
Chapter 4: Variables, Lists and Strings
Lecture 1: Normal Variables
Lecture 2: Quoted and Unquoted Arguments
Lecture 3: Manipulating Variables
Lecture 4: Lists and Strings
Chapter 5: Control Flow Commands, Functions, Macros, Scopes and Listfiles
Lecture 1: If-Else Command
Lecture 2: Looping Commands
Lecture 3: Functions
Lecture 4: Optional Arguments of Functions
Lecture 5: Scopes
Lecture 6: Macros
Lecture 7: Listfiles and Modules
Chapter 6: Cache Variables
Lecture 1: Setting a Cache Variable
Lecture 2: Modification of Cache Variables
Lecture 3: Cache Variables: CMAKE_VERSION, CMAKE_PROJECT_NAME, CMAKE_GENERATOR
Chapter 7: Installing and Exporting Package
Lecture 1: Requirements for Installing/Exporting Package
Lecture 2: Installation Process of Packages
Lecture 3: Exporting a Package
Lecture 4: Using a 3rd party Package in our Project
Chapter 8: Tips/FAQs
Lecture 1: Introduction
Lecture 2: Commenting in CMake
Lecture 3: Using CMake variables in CPP files
Lecture 4: Running CMakeLists.txt in Script mode
Lecture 5: Debug/Release Mode
Chapter 9: Linking External Libraries
Lecture 1: Problems with Linking External Libraries
Lecture 2: Installation of OpenCV (External Package)
Lecture 3: Using OpenCV in a Project
Lecture 4: Using Pkg-Config to link GTK3 Library
Lecture 5: find_library() and find_path() commands
Lecture 6: Writing a Find* module
Lecture 7: Read Through: FindGTK3.cmake
Chapter 10: Bonus
Lecture 1: Bonus Lecture
Instructors

Milan Yadav
Robotics Enthusiast & Active Researcher
Rating Distribution
Frequently Asked Questions
How long do I have access to the course materials?
You can view and review the lecture materials indefinitely, like an on-demand channel.
Can I take my courses with me wherever I go?
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!
- Random Picks
- Popular
- Hot Reviews
- Life Insurance Annuity Ultimate Buyer’s Guide
- Personal Finance
- Company Valuation Financial Modeling
- The Beginner Forex Trading Playbook
- How to Draw Cute Thanksgiving!
- Dibuja y Esculpe tu COVID para Impresión 3d en Blender 2.8X
- 3Ds MAX + VRAY 5 + Interior 3D Rendering
- Figma Fundamentals- Use Figma Like a Pro
- 1YouTube Masterclass The Best Guide to YouTube Success
- 2Photoshop CC- Adjustement Layers, Blending Modes Masks
- 3Personal Finance
- 4SolidWorks Essential Training ( 2023 2024 )
- 5The Architecture of Oscar Niemeyer
- 6Polymer Clay Jewelry Making Techniques for Beginners
- 7Advanced Photoshop Manipulations Tutorials Bundle
- 8LINQ- A Course For Beginners
- 1Linux Performance Monitoring Analysis Hands On !!
- 2Content Writing Mastery 1- Content Writing For Beginners
- 3Media Training for PrintOnline Interviews-Get Great Quotes
- 4Learn Facebook Ads from Scratch Get more Leads and Sales
- 5The Complete Digital Marketing Course Learn From Scratch
- 6C#- Start programming with C# (for complete beginners)
- 7[FREE] How to code 10 times faster with Emmet
- 8Driving Results through Data Storytelling