Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Master CMake for Cross-Platform C++ Project Building
Rating: 4.4 out of 5(2,627 ratings)
13,111 students

Master CMake for Cross-Platform C++ Project Building

Learn the most powerful and recommended way of building the C++ projects
Created byMilan Yadav
Last updated 1/2022
English
English

What you'll learn

  • CMake Commands and Terminologies
  • Importance of Make and CMake
  • Importing and Exporting Packages
  • CMake's Scripting Mode
  • Configure Project Building using Cache Variables
  • Linking against External Libraries

Course content

10 sections46 lectures3h 27m total length
  • Before You Begin0:24
  • Building a C++ Project using G++7:40

    Learn how to set up a g++ based c++ project on ubuntu, write and compile a simple program, modularize with separate source files and headers, and resolve linking errors.

  • Need of Build Systems3:15

    Explore how build systems automate compiling and linking for multi-file C++ projects, manage dependencies, and cut build times by rebuilding only changed files using Make.

  • Need of Meta Build System3:34

    Discover why a meta build system matters: CMake generates platform-specific build files to enable cross-platform C++ projects, solving inconsistencies between makefile based builds on Windows and Linux.

  • Project Compilation

Requirements

  • Basic Understanding of C or C++ programming language
  • For following along, a Linux based Computer is required

Description

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:

  1. Section 1:

    1. Problems associated with NOT using a build system

    2. Difference between a build system (Make) and a meta-build system (CMake).

  2. Section 2:

    1. Installation of CMake

    2. First executable using the CMake

  3. Section 3:

    1. Managing large projects using sub-directories

  4. Section 4:

    1. Variables, Lists, and Strings

    2. Scripting Capabilities of CMake

  5. Section 5:

    1. Flow Control commands (If-else commands and the Loops)

    2. Functions, Scopes, Macros, Modules, and Listfiles.

  6. Section 6:

    1. Configuring a project using Cache Variables

    2. Concept of Libraries

    3. Using Ninja Build System with CMake

  7. Section 7:

    1. Installation a package that is developed by someone else

    2. Export our package so that someone else can use it

  8. Section 8:(Read through Section)

    1. Miscellaneous small concepts, FAQs and tips

  9. Section 9:

    1. Problems while installing and using External Libraries

    2. 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.

Who this course is for:

  • Beginners, interested in learning the build process of C or C++ projects
  • Anyone, who wants to understand the CMakeLists files written by the community