On 2015-12-16 13:15, Dima Kogan wrote: > 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.
The problem is not introduced by the glibc, but just by the fact that it has been built with a recent binutils version which adds new relocation types on i386 and amd64. This means that ALL static libraries are affected by this problem. > Can the broken combination be prevented with some Conflicts: tags? > Currently this is a trap for the unwary. I therefore don't think we need to fix that at the glibc level. Either we just ignore the problem saying we don't support partial upgrades or we try to find a global way to fix the dependencies for all libraries. Aurelien -- Aurelien Jarno GPG: 4096R/1DDD8C9B aurel...@aurel32.net http://www.aurel32.net