Using Conan in a real-world complex project
summary
Shows how Conan replaces messy ExternalProject and git submodules to enable reproducible cross‑compiles for IncludeOS by packaging dependencies (GSL, rapidjson, musl, libcap, etc.), generating CMake via conanfile.py, and using profiles for toolchains and target triples. Covers editable workflows with a layout file to edit a package in-place, CI that runs conan create on PRs and uploads to Bintray/Artifactory, and pitfalls like version ranges requiring pre_release=true, cache pollution from local creates, and timing issues with ExternalProject.
AI-written summary · about
chapters (31)
- 0:00Introduction
- 0:30Background
- 1:07Overview
- 1:32Why
- 3:51Options
- 5:22What is Conan
- 6:38Getting started with Conan
- 12:49Python
- 14:35Conan
- 17:30Requirements
- 19:03Configure
- 19:41Build
- 20:41Package Info
- 22:35Recap
- 23:20Common Profile
- 24:26Generators
- 25:03Repository
- 25:56SeeMake
- 26:41IncludeOS
- 27:34Packages
- 28:09Unit Testing
- 30:34Demo
- 35:58Crossbuild
- 36:58Text
- 37:53C Make
- 41:28Dependencies
- 45:58Build Folder
- 46:58Common File PI
- 48:08Editable List
- 49:18Source Activate SH
- 51:58CI
related talks
01h 01mGit, CMake, Conan - How to ship and reuse our C++ projects
01h 20mContinuous Integration for Large Scale C/C++ Projects With Conan2
01h 08m“Faster Delivery of Large C/C++ Projects with..."
01h 04mCMake and Conan: past, present and future
28mConan, a C and C++ package manager for developers
37mCross-Building Strategies in the Age of C++ Package Managers
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
06mLightning Talk: DevSecOps for C++? Keep Calm and use Conan
