Symbols files for C++ libraries for Ubuntu main
Sebastien Bacher
seb128 at ubuntu.com
Mon Jun 12 08:16:51 UTC 2023
Hey Steve,
Le 09/06/2023 à 21:10, Steve Langasek a écrit :
> I wouldn't say that it doesn't protect you. It's a pain to set up initially
> and as you note, you can even have to do further fix-ups as a result of
> toolchain changes, as the set of template functions and other C++ sugar from
> outside of the library that gets exported as ELF symbols can change. It
> DOES have a high cost, but in the end it provides the same level of
> protection against accidental ABI breakage as it does for C libraries.
The difference with C library projects and why I'm saying it doesn't
really protect us is that for a C library the symbols are mostly stable
and I feel like we are able to review the diff when there is a change
and understand if there is an issue.
Where the way we currently maintain our c++ projects symbols in practice
is that we end up listing stack of symbols as optional or just applying
the diff proposed in build log (even if that removes a stack of existing
symbols which could include ABI incompatibilities) because most of us
are not able to make sense of what the tools are outputing.
> I don't speak for the MIR team, I have no objection to them relaxing the
> requirement of .symbols files for C++ libraries in main. Just offering some
> suggestions on how we can do a better job of automating C++ ABI checks than
> we're doing today.
Thanks for the suggestions to you and Dimitry, I will try to at least
summarize the best practices/outcome of the discussion on a wikipage for
those we want to do c++ symbols tracking but are struggling with it.
I will also try to raise the topic more directly to the MIR team during
the weekly meeting because even with the tips shared here I still think
the requirement should be lifted.
Cheers,
Sébastien Bacher
More information about the ubuntu-devel
mailing list