Dependency Management in C++
summary
Tests four C++ dependency approaches — conan, vcpkg, CPM, and plain fetch_content — by building a small cross‑platform demo (SFML window, fmt logging, Catch2 test). Finds conan closest to desired workflow, vcpkg nearly there, while CPM/fetch_content force source builds and break find_package and C++ standard assumptions (SFML required C++14). Uses GitHub Actions caching, notes transitive/version tracking is missing, and calls for a single machine‑parsable dependency tree output so vulnerability scanners can stop guessing.
AI-written summary · about
chapters (17)
- 0:00Start
- 2:13Why Should You Have Dependency Management
- 2:49Vulnerability in Openssl
- 6:46Demo Project
- 7:06Requirements for the Dependency Manager
- 10:59Basic Project Structure
- 12:32Test Code
- 13:31Source Cmake File
- 14:53Github Action Workflow
- 20:51Github Action Cache
- 23:28Basic Structure
- 24:07How To Specify My My Dependencies
- 25:19Fetch Content
- 28:23Tool Chain File
- 30:10Using External Project
- 49:30How Do I Know What the Licenses of all of My Dependencies Are
- 51:03Questions and or Comments
related talks
01h 12mC++ Package Manager - C++ Dependencies Don't Have To Be Painful!
01h 11mThe State of Package Management in C++
01h 13mAdvanced Dependencies Model in Conan 2.0 C, C++ Package Manager
01h 01mPackage management in C++
42mManage code dependencies at work with new vcpkg features
22mBuilding Portable C++ Packages: The Bliss of Unification
38mDependency Management: The Cause of—and Solution to—All Supply Chain Problems
46mNavigating the Dependency Management Maze
