Subject: libc6: Upgrade can make the linker unusable

From: Dima Kogan <[email-masked]>
Date: Wed, 16 Dec 2015 13:15:47 -0800

Package: libc6
Severity: normal

Hi. I had

  libc6    = 2.19-22
  binutils = 2.25-4

and all was well. Then I upgraded to libc6 = 2.21-4 (currently latest in
sid). As a result, even the most basic build-time linking would fail.
For instance, with a trivial hello-world program:

  $ gcc-5 -o tst tst.c                                            

  /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o: unrecognized relocation (0x2a) in section `.init'
  /usr/bin/ld: final link failed: Bad value
  collect2: error: ld returned 1 exit status

This would happen with gcc-5 and with gcc-4.9. Downgrading libc6 would
fix it. After some fiddling I realized that upgrading to binutils =
2.25.90.20151209-1 (currently latest in sid) fixes it. I.e. with the
latest libc6 and the latest binutils packages things work.

Can the broken combination be prevented with some Conflicts: tags?
Currently this is a trap for the unwary.