Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Git, CMake, Conan - How to Ship and Reuse Our C++ Projects

CppNow via YouTube

Overview

Explore a comprehensive conference talk on streamlining C++ project management and dependency handling using Git, CMake, and Conan. Learn how to effectively ship and reuse C++ projects by leveraging modern tools and best practices. Dive into topics such as modular CMake design, package testing workflows, Conan package management, and integrating these tools for efficient C++ development. Gain insights from Mateusz Pusz, a seasoned C++ expert and ISO C++ Committee member, as he shares practical solutions for common challenges in large, multi-platform C++ projects with numerous open-source dependencies.

Syllabus

Intro
ACCU 2018 TALK SUBMISSION FEEDBACK
THE MOST COMMON C++ TOOLSET
TYPICAL WAYS TO HANDLE DEPENDENCIES IN C++ PROJECTS
TYPICAL CMAKE WORKFLOW
MODERN CMake: MODULAR DESIGN
PHYSICAL DESIGN: OLD CMAKE STYLE
PHYSICAL DESIGN: MODERN CMAKE
NO CYCLIC PHYSICAL DEPENDENCIES!
ALIAS TARGETS
GENERATOR EXPRESSIONS
MODERN LIBRARY EXAMPLE
MODERN LIBRARY USAGE
FILES ORGANIZATION
MODERN CMAKE CODE OF CONDUCT
EXPORT YOUR LIBRARY INTERFACE
PACKAGE TESTING WORKFLOW
PURE CMAKE: DEPENDENCIES THE WRONG WAY
CONAN CLIENT-SERVER ARCHITECTURE
CONAN PACKAGE IDENTIFIER
CONAN PACKAGES
INSPECTING DEPENDENCIES
PACKAGE DETAILS
INSTALLING DEPENDENCIES
CONAN FILES
SETTING PACKAGE OPTIONS
FIXING IMPORTS FOR SHARED LIBRARIES
MORE POWER WITH CONANFILE.PY
CONAN PROFILES
USING CONAN WITH CMAKE
CONAN PACKAGE CREATION
SUMMARY

Taught by

CppNow

Reviews

Start your review of Git, CMake, Conan - How to Ship and Reuse Our C++ Projects

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.