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