Git, CMake, Conan - How to ship and reuse our C++ projects
summary
Compares concrete CMake patterns and Conan commands for reproducible C++ packaging: shows how modern CMake targets and generator expressions avoid header/flag leakage that breaks projects using different Boost, GTest or OpenSSL versions; demonstrates a conanfile recipe with export_sources, test_package, and package_id hashing; walks through Conan create/export, local cache behavior, upload to Bintray or Artifactory, and use of profiles for compilers and debug/release; explains CMake generators including CMake_find_package and CMake_paths and warns against version ranges.
AI-written summary · about
chapters (22)
- 0:00Introduction
- 1:30Current C++ tooling landscape
- 3:36Dependency handling challenges
- 6:36Modern CMake fundamentals
- 12:46Modern CMake in practice
- 20:29CMake project structure
- 22:29Exporting CMake packages
- 25:03Limitations of CMake for distribution
- 27:15Conan as C++ package manager
- 29:23Conan features and architecture
- 31:17Conan package concepts
- 33:28Searching and inspecting packages
- 35:25Conan workflow and profiles
- 38:45Conan recipe file explained
- 42:41Conan package creation process
- 45:43Conan recipe methods
- 49:22Conan test package
- 51:39Conan development flow
- 53:30Distributing quality Conan packages
- 54:15CMake and Conan integration
- 57:12Best practices and automation
- 59:44Summary and closing
related talks
57mUsing Conan in a real-world complex project
28mConan, a C and C++ package manager for developers
01h 04mCMake and Conan: past, present and future
22mBuilding Portable C++ Packages: The Bliss of Unification
01h 20mContinuous Integration for Large Scale C/C++ Projects With Conan2
01h 08m“Faster Delivery of Large C/C++ Projects with..."
01h 12mA Common Package Specification: Getting Build Tools to Talk to Each Other: Lessons Learned From Making Thousands of Binaries Consumable by Any Build System
46mBuilding and Packaging Modern C++
