www.youtube.com
10 Problems Large Companies Have Managing C++ Dependencies and How to Solve Them - Augustin Popa
Excerpt
It is no secret that managing C++ dependencies is a serious challenge, especially for larger projects. It is consistently cited as a top pain point in ISO C++ developer surveys. The C++ community has been asking for a standard C++ build system and package manager, but we need solutions that we can put into practice today. ... … {ts:174} guess of my findings I want to point out that every year there is an annual survey that gets published uh to isoc cpp.org and this is one of the questions that gets asked which of these do you find frustrating about C++ development there are many response options but I picked the top {ts:193} five so that it doesn't get too complicated on the slide the number one top pain point is managing libraries my application depends on and this has been the case I believe as long as this survey has been conducted in my conversations with large companies I also found that for large … {ts:539} cmake in this case um and I'll go into this a little bit more uh throughout the talk all right so if we switch back to the slides all right so one big challenge {ts:561} with C++ um is that when you compile a binary that B that binary isn't really portable um it's effectively unique compared to some other binary that's compiled in a slightly different way and when you have large companies with many different development teams that are producing individual components that … {ts:596} what compiler and what compiler version are using what is your target Opera system and architecture what are the optional Library features you've turned on for each dependency and in general you have to take a close look at your compiler flags and you have to make sure that every part of that dependency graph is compiled consistently otherwise you have problems with ABI
Related Pain Points
No standard package management system
7C++ lacks a standard dependency manager like Rust's Cargo or Python's pip. Solutions like Conan and vcpkg are difficult to use; CPM is more promising but not standard.
Cross-Platform Compatibility and Portability
732-52.6% of C++ developers encounter compatibility and portability issues across platforms, operating systems, and compilers. Code adjustments for different systems can be time-consuming, especially with legacy code, resulting in platform-specific bugs and increased maintenance costs.