Bug#871630: gcc-defaults should ensure equal versions in both directions
On 10.08.2017 08:15, Adrian Bunk wrote:
> Source: gcc-defaults
> Severity: important
> Tags: patch
>
> https://buildd.debian.org/status/fetch.php?pkg=lorene&arch=ppc64el&ver=0.0.0~cvs20161116%2Bdfsg-1%2Bb1&stamp=1502276276&raw=0
> https://buildd.debian.org/status/fetch.php?pkg=dynare&arch=ppc64el&ver=4.5.1-1%2Bb1&stamp=1502287921&raw=0
> https://buildd.debian.org/status/fetch.php?pkg=gyoto&arch=ppc64el&ver=1.2.0-2%2Bb2&stamp=1502307571&raw=0
>
> The root cause of these build failures is:
> - buildd chroot contained the old (gcc 6) packages of cpp, gcc and g++
> - installing the build dependency gfortran upgraded cpp and gcc but not g++,
> resulting in errors due to:
> - cpp (7) not finding cc1plus, and
> - g++ (6) as linker not finding -lfortran - and if gfortran-6 would
> have been installed, it would have linked with the wrong library
>
> In this case regenerating chroots was not working once resulting in
> old chroots still being used, but that's a general problem for new
> major releases of gcc since the buildd chroots are only regenerated
> twice a week and not dist-upgraded prior to a build.
>
> The attached patch addresses this problem by changing the dependencies
> between the packages from >= to =
I don't like that patch too much. We now have gij/gcj building from gcc-6, and
we may have gccgo or gdc building from gcc-8, mismatching the defaults. So
probably it's ok to tighten the dependencies for packages up to g++, maybe
gfortran, but not more. I think that would address most use cases.
Reply to: