CMake and Conan: past, present and future - Diego Rodriguez-Losada - Meeting C++ 2023

  Рет қаралды 4,809

Meeting Cpp

Meeting Cpp

5 ай бұрын

CMake and Conan: past, present and future - Diego Rodriguez-Losada - Meeting C++ 2023
From legacy variable-based dependencies to Common Package Specification (CPS)
CMake and Conan have been continuously evolving since their origin. Specifically, dependency management in CMake has evolved from using variables defined in find modules, to using usage requirements in imported targets defined in config files. More recently, toolchain files, CMake presets, the new CMake dependency providers and the preliminary work towards a Common Package Specification (CPS) are creating new integration possibilities. In parallel to this, the Conan package manager and CMake integrations have also greatly changed over years to provide an improved and transparent CMake integration and better developer experience.
This talk will quickly review the past approaches, their pitfalls, and how modern CMake and Conan integrations have improved over them:
From variables, to targets, to transparent targets integration with modern Conan generators
Better separation of concerns to align binary configurations using CMake toolchains
Improving the developer experience with CMake presets
The new CMake-Conan integration using CMake’s new dependency providers feature for transparent installation of dependencies
The talk will finalize with an overview of ongoing work over a Common Package Specification (CPS) proposal, how CMake and Conan already have early partial implementations, and it will finish summarizing future steps.

Пікірлер: 9
@dmitryyudin4990
@dmitryyudin4990 4 ай бұрын
Very informative talk. Thank you soo much!
@richjohnson8261
@richjohnson8261 4 ай бұрын
I hope to see more example and tutorial resources for conan v2 and cmake on the web. It seems lacking at this time. I really struggle to get a new project started. For example, bringing Fakeit into my project is a challenge perhaps because it is a header-only. Not sure.
@MsJavaWolf
@MsJavaWolf Ай бұрын
I spent the whole day trying to configure a Qt project, I'm still not done xD
@shaulfridman4444
@shaulfridman4444 3 ай бұрын
Great talk, thanks 🙏
@GaryOberbrunner
@GaryOberbrunner 4 ай бұрын
Is there a repo with the demo you're giving in this talk? I'm trying to set up a new project using conan2 and cmake with cmake as the driver, but cannot figure out how to make a single "cmake" command work like in your first demo.
@andyhome5009
@andyhome5009 Күн бұрын
I would like to know this as well. I can’t find this example in the repository
@zxcaaq
@zxcaaq 4 ай бұрын
thanks for the talk but I need to be able to take cmake project and output the actual fucking command that is used to compile it. gcc clang etc..
@Mindfak224
@Mindfak224 28 күн бұрын
did you try this? mkdir build cd build cmake .. (path to your sourcecode) cmake --build . CMake is the easiest thing there is. There is only configuring and building. If it doesn't build then your config is wrong. you do not have to care about the compiler since this is handled by the generator
Time Travel Debugging - Greg Law - Meeting C++ 2023
1:02:01
Meeting Cpp
Рет қаралды 2,4 М.
ПАРАЗИТОВ МНОГО, НО ОН ОДИН!❤❤❤
01:00
Chapitosiki
Рет қаралды 2,8 МЛН
What I learned from sockets - Filipp Gelman - Meeting C++ 2023
1:01:18
C++ Common  Knowledge - Dawid Zalewski - Meeting C++ 2023
54:27
Meeting Cpp
Рет қаралды 6 М.
Conan 2.0  | C++ Package Manager - A detailed introduction
51:47
Lötwig Fusel
Рет қаралды 17 М.
What's new and what's changed in C23 - Jarosław Stańczyk - code::dive 2023
35:56
Выложил СВОЙ АЙФОН НА АВИТО #shorts
0:42
Дмитрий Левандовский
Рет қаралды 1,8 МЛН
cool watercooled mobile phone radiator #tech #cooler #ytfeed
0:14
Stark Edition
Рет қаралды 8 МЛН