Delve into the world of CMake with this comprehensive course. From an introduction to advanced techniques, participants will grasp project setup, cross-platform configuration, pipeline customizations, advanced integrations, and even the seamless incorporation of Conan. Featuring hands-on examples and expert-led workshops, this course ensures proficiency in modern CMake practices, ensuring efficient and optimal project management.
This course is designed to navigate participants through the intricate aspects of CMake. Starting with an introduction, attendees will quickly learn how to initiate projects and configure them across diverse platforms. The course elucidates CMake's major features, diving deep into syntax intricacies, variables, cache management, and much more. From crafting specific commands with macros to mastering the target-based approach, participants will acquire the skills to efficiently manage both internal and external libraries. Additionally, this course introduces the concept of cross-compilation, offering a practical take on the subject. Finally, for those looking to integrate Conan with CMake, a dedicated session ensures they can harness this combination effectively.
• Master the foundational concepts and syntax of CMake for effective project setup across multiple platforms.
• Gain expertise in modern CMake best practices, particularly the target-based approach and efficient library management.
• Acquire skills in advanced CMake techniques, including handling transitive dependencies and optimizing compilation.
• Understand the concept and practical application of cross-compilation using CMake.
• Achieve proficiency in integrating the C++ package manager Conan with CMake for enhanced project management.
• Basic understanding of programming and project management.
• Familiarity with command-line tools and operations.
• Knowledge of fundamental programming concepts like compilers, libraries, and headers.
• Prior experience with any build system (e.g., Make, MSBuild) is beneficial but not mandatory.
• An understanding of software development lifecycle and practices.
• Ideally the participants would have some basic familiarity with C++, but this is not strictly necessary.
*We know each team has their own needs and specifications. That is why we can modify the training outline per need.
Introduction to CMake and Project Setup
Getting Started with CMake
Setting up Projects with CMake
Diving Deeper into CMake Syntax
Installing Libraries using CMake
Modern CMake Best Practices Overview
Advanced CMake Techniques and Integrations
CMake Modern Best Practices Continued
Advanced CMake Techniques
Optimizing Compilation with Advanced CMake Commands
Cross-Compilation with CMake
Enhancing Your CMake Scripts
Integrating Conan with CMake
Hands-on learning with expert instructors at your location for organizations.
Master new skills guided by experienced instructors from anywhere.