Tuesday 3 May 2011

Gcc 4.6 transition (Posted by Andreas Tille)

Hello,
from gcc 4.4.x with a very short introduction to 4.5.x Debian is now leaping ahead to 4.6.x with several new features. Already coming with 4.5 was the link time optimisation and there are now 128 bit floats. This shall mean something to the molecular dynamics community and maybe others on this list. We also see many more and better optimisations, so everyone will profit this already very present switch to 4.6.x in sid. Phoronix kindly did a benchmark on HMMER with Pfam and MAFFT.
The downside is ... some package builds will break. Thanks to Lucas Nussbaum's tireless QA work the whole Debian archive is rebuilded regularly - so we just know which packages are affected. However, those FTBFS (fails to build from source) cause some work on our side because we need to find out the reason why some package might fail. If we do not fix it the package in question will not reach the next stable release because those issues are regarded "serious" in Debian.
Most of the time, the fixes are rather straight forward. Like, e.g. by
#including <cstddef>
or similar. Please drop comments to this post with whatever strange issue you may have run into. Particularly funny e.g. is the building of Embassy packages for which configure reports a broken gcc. After all, the change to 4.6 is nice to
  • send another email to upstream with a patch for them to fix the failure
  • and while at it, maybe fix something that you wanted to have fixed/modded/... for long, just never got around to it
  • report to upstream (and this blog maybe) about performance improvements experienced with the new gcc
  • just enjoy it silently
Gcc 4.6 is said not to ship with Ubuntu 11.04, which is unfortunate for Ubuntu but should not hamper the transition of packages. In general those gcc transitions are just enforcing stricter standard compliance of the code and the changes which need to be done in packaging will most probably not break a build with gcc 4.5.
When handling such build failures for your specific package in Debian Med please keep two things in mind:

  1. Helping upstream in enhancing their code makes them happy to cooperate with Debian Med and they will probably suggest their users Debian as default distribution if they regard us as competent and helpful partners

  2. The role of Debian Med inside Debian will be strengthened if we are quick in fixing our issues. Please keep in mind that the constant growth of Debian always triggers suggestions to drop packages which are not used by many users to keep the maintenance effort lower. By default Debian Med has a small user base (compared to web browsers or office suites etc.) and thus we should really make sure that everybody in Debian knows for sure that the Debian Med packaging team is usually quick in fixing their issues and do not create extra work for other people.

No comments:

Post a Comment