Current binutils failed to build glibc
Roland McGrath
roland@redhat.com
Fri Oct 1 06:13:00 GMT 2004
> With the current binutils, glibc failed to build
>
> gcc -nostdlib -nostartfiles -r -o
> /export/build/gnu/glibc-nptl-3.4/build-i686-linux/elf/librtld.map.o
> '-Wl,-('
> /export/build/gnu/glibc-nptl-3.4/build-i686-linux/elf/dl-allobjs.os
> /export/build/gnu/glibc-nptl-3.4/build-i686-linux/libc_pic.a -lgcc
> '-Wl,-)'
> -Wl,-Map,/export/build/gnu/glibc-nptl-3.4/build-i686-linux/elf/librtld.mapT
> /usr/local/bin/ld: errno: TLS definition in
> /export/build/gnu/glibc-nptl-3.4/build-i686-linux/libc_pic.a(errno.os)
> section .tbss mismatches non-TLS reference in
> /export/build/gnu/glibc-nptl-3.4/build-i686-linux/elf/dl-allobjs.os
> /export/build/gnu/glibc-nptl-3.4/build-i686-linux/libc_pic.a: could not
> read symbols: Bad value
>
> Although I believe it is a glibc build bug, I was wondering if the
> binutils should tolerate this misuse.
It certainly should not. Resolving TLS and non-TLS symbols together would
be disastrous at runtime, and refusing at link time to let it happen is the
right thing.
More information about the Libc-alpha
mailing list