|| ||Martin Michlmayr <tbm-AT-cyrius.com>|
|| ||GCC 4.2 transition|
|| ||Thu, 28 Jun 2007 14:47:55 +0200|
GCC 4.2 was released on May 13 and has been in unstable since roughly
that time. The default version of gfortran was recently switched to
4.2 and the Debian GCC maintainers would like to move to 4.2 as the
default compiler in unstable for all architectures and for all
languages with the exception of Java (which will follow later).
This message describes the plan to make this transition possible.
Throughout the development of GCC 4.2, we regularly recompiled the
entire Debian archive with development snapshots of GCC to make sure
that we'd end up with a reliable compiler. We have done regular
rebuilds on IA64 and AMD64, and we have tested almost every
architecture at some point during the development phase of 4.2 (the
exception being hppa and m68k, as well as non-Linux platforms). We
now have a compiler with relatively few known issues.
We also filed bugs on packages that don't compile with GCC 4.2 and
kept track of them at
These bugs need to be resolved before GCC 4.2 can be adopted as the
default compiler in unstable. At the moment, we have 66 bugs that
need to be resolved:
- 40 bugs that need further investigation and patches.
- 16 packages with bugs that have patches and need to be NMUed.
- 6 forwarded bugs: the maintainer should be pinged to see whether
this has already been resolved upstream or needs to be fixed
in another way.
- 4 pending bugs: we need to check why these packages haven't been
This message is a call for help for this GCC 4.2 transition. We need:
- Debian developers who can NMU the affected packages. We can do
0-day NMUs for GCC 4.2 related bugs.
- C and C++ programmers who can investigate build failures and produce
If you're interested in helping with this transition, please send me
a message. The current plan is to resolve the majority of these bugs
within the next 10 days so we can move to GCC 4.2 by the end of next
Finally, here is a brief look ahead to GCC 4.3 (which may find its way
into lenny, depending on the upstream release date). The development
of GCC is divided into 3 stages (see <http://gcc.gnu.org/develop.html>)
and stage 1 is just about to come to an end. Moving to GCC 4.3 will
involve with major work because C++ header dependencies got cleaned up
(see <http://www.cyrius.com/journal/gcc/gcc-4.3-include>). As a
result, C++ applications which don't include headers they need and
rely on them to be included indirectly will no longer build. From
what I've seen so far, the majority of C++ packages in Debian is
buggy in this way. I submitted an initial batch of bugs in April but
since then some more headers got cleaned up. The good news is that
these bugs are trivial to fix. For those interested in trying out a
snapshot of GCC 4.3, we're updating the gcc-snapshot package in
unstable every 3-4 weeks.
to post comments)