Hi, On Wed, 17 Jul 2019, Romain Geissler wrote:
> However at scale, I think this can become a problem. What will happen > when in gcc 9.3 we change the version to 8.2 ? Will Tumbleweed recompile > 100% of the static libraris it ships ? Every compiler change causes the whole distro to be rebuilt. So for us the LTO byte stream instability is no problem. > What about all users of Tumbleweed having their own private libs with > LTO as well ? LTO is currently not designed for this use case, you can use fat objects to get around the limitation, as you say, but a stable LTO byte stream is currently not a focus. But with time I indeed also hope that some backward compatiblity can be achieved, with degrading modes like you suggested. > I am totally fine with having the major version mismatch as a > showstopper for the link. People will usually not combine a gcc 8 built > binary with a gcc 9 one. That's actually not too far off from what people will want to do in the future. Say some HPC vendor ships their libs as static archives, containing LTO byte code compiled by gcc 9. Then a distro user might get gcc 10 at some point later, and it's reasonable to expect that the HPC libs still are working. We aren't there yet, but we eventually want to be there. Ciao, Michael.