[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#351629: Recent libc6-dev broke compatibility with sarge binutils and gcc-3.3



Package: libc6-dev
Version: 2.3.5-12.1
Severity: important

After upgrade libc6 to 2.3.5-12.1 our locat projects failed to build.

Minimal test that reproduces the problem:

nikita@zigzag:~/adm/libc> cat t.c
#include <stdlib.h>

void at() {}

int f(void)
{
	atexit(&at);
	return 0;
}

nikita@zigzag:~/adm/libc> gcc -shared -o libt.so t.c
/usr/lib/libc_nonshared.a(atexit.oS)(.gnu.linkonce.t.__i686.get_pc_thunk.bx+0x0):
In function `__i686.get_pc_thunk.bx':
: multiple definition of `__i686.get_pc_thunk.bx'
/usr/lib/gcc-lib/i486-linux/3.3.5/crtbeginS.o(.gnu.linkonce.t.__i686.get_pc_thunk.bx+0x0):
first defined here
collect2: ld returned 1 exit status

Error goes away if libc is downgraded to version in testing.
Error was not there before today's upgrade (so it not was there in
2.3.5-12 version).

Error also goes away if binutils is upgraded from sarge version to version
currently in unstable. But this upgrade in turn causes problems with
usage of g++ 3.3, described at
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16625. This problem happens
on Debian if binutils are post-sarge, with any version of g++-3.3
packages.

So at least, dependency on recent binutils should be added.

But it would be much better if compatibility with sarge binutils will be
preserved in libc6-dev until a workable combination of g++-3.3 and
post-sarge binutils will be found. Unfortunately, we do have to use
g++-3.3 ABI here, and I'm sure we are not alone with that.

-- System Information:
Debian Release: 3.1
  APT prefers proposed-updates
  APT policy: (640, 'proposed-updates'), (640, 'stable'), (620, 'testing-proposed-updates'), (620, 'testing'), (600, 'unstable'), (550, 'experimental')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.15
Locale: LANG=ru_RU.KOI8-R, LC_CTYPE=ru_RU.KOI8-R (charmap=KOI8-R)

Versions of packages libc6-dev depends on:
ii  libc6                2.3.5-8             GNU C Library: Shared libraries an
ii  linux-kernel-headers 2.5.999-test7-bk-17 Linux Kernel Headers for developme

Versions of packages libc6-dev recommends:
ii  gcc [c-compiler]             4:3.3.5-3   The GNU C compiler
ii  gcc-2.95 [c-compiler]        1:2.95.4-22 The GNU C compiler
ii  gcc-3.3 [c-compiler]         1:3.3.5-13  The GNU C compiler
ii  gcc-3.4 [c-compiler]         3.4.3-13    The GNU C compiler

-- no debconf information



Reply to: