YoVDO

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

Offered By: CppNow via YouTube

Tags

C++Now Courses C++ Courses Git Courses CMake Courses Software Architecture Courses Conan Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
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

Related Courses

Pattern-Oriented Software Architectures: Programming Mobile Services for Android Handheld Systems
Vanderbilt University via Coursera
The Caltech-JPL Summer School on Big Data Analytics
California Institute of Technology via Coursera
Automated Visual Software Analytics
openHPI
Software Architecture & Design
Georgia Institute of Technology via Udacity
Software Architecture for the Internet of Things
EIT Digital via Coursera