cross sparc64 chapter 5 glibc tls required error with 20050930 version of book

Frans Verstegen frans_verstegen at yahoo.fr
Sun Oct 2 04:12:15 PDT 2005


Jim Gifford wrote:
> Hmm,
> This is weird, if you have patched your binutils and glibc for
> tls sparc you shouldn't be having this issue. What is your host
> distro?

I'm trying this on more than one system all targeting sparc64:
  one from i686-pc-cygwin (by far the fastest machine)
  one from sparc-unknown-linux-gnu (Ultra 10 running lfs-5 32bit)
  one from i586-mandrake-linux-gnu

I now reset the environment before building binutils, gcc and glibc:
  BUILD64=-m64 -mcpu=ultrasparc -mtune=ultrasparc
  GCCTARGET=-mcpu=ultrasparc -mtune=ultrasparc
  LC_ALL=POSIX
  LFS_HOST=i686-pc-cygwin
  LFS_TARGET=sparc64-unknown-linux-gnu
  PATH=/cross-tools/bin:/bin:/usr/bin
  PWD=/home/Frans Verstegen/7.0-cross-lfs-20050815-Sparc64/~lfs
  SHLVL=1
  SYSTEMROOT=C:\WINDOWS
  _=/bin/env

binutils goes like this:
  + cd /mnt/LFS-6/build/binutils-2.16.1
  + patch -N -p1 -i /mnt/LFS-6/sources/binutils-2.16.1-posix-1.patch
  patching file gas/Makefile.am
  patching file gas/Makefile.in
  patching file ld/testsuite/ld-bootstrap/bootstrap.exp
  patching file ltcf-c.sh
  patching file ltcf-gcj.sh
  patching file src-release
  + patch -N -p1 -i
/mnt/LFS-6/sources/binutils-2.16.1-sparc_tls-1.patch
  patching file bfd/elf64-sparc.c
  patching file ld/testsuite/ld-selective/sel-dump.exp
  patching file ld/testsuite/ld-selective/selective.exp
  (...)

glibc:
  + cd /mnt/LFS-6/build/glibc-20050926
  + patch -N -p1 -i /mnt/LFS-6/sources/glibc-20050926-libgcc_eh-1.patch
  patching file Makeconfig
  + patch -N -p1 -i
/mnt/LFS-6/sources/glibc-20050926-localedef_segfault-1.patch
  patching file locale/programs/3level.h
  + patch -N -p1 -i /mnt/LFS-6/sources/glibc-20050926-sparc_tls-1.patch
  patching file elf/tls-macros.h
  + cd /mnt/LFS-6/build
  + mkdir -p glibc-build
  + cd /mnt/LFS-6/build/glibc-build
  (...)

and I get the same error on all of them:
  In file included from include/tls.h:6,
                   from <stdin>:1:
  nptl/sysdeps/sparc/tls.h:59:3: error: #error "TLS support is
required."
  make[1]: *** [/mnt/LFS-6/build/glibc-build/Versions.v.i] Error 1
  make[1]: Leaving directory `/mnt/LFS-6/build/glibc-20050926'
  make: *** [all] Error 2

I'm still confused about the glibc-configure fragment trying to detect
the sparc64 TLS support. On all three machines:
  checking size of long double... 0
  running configure fragment for sysdeps/sparc/sparc64/elf
  checking for sparc64 TLS support... no
  checking for sparc64 ld WDISP22 handling... ok

As suggested by Bryan Kadzban:
> message?  It seems to generate an assembly-language file, then try to
> assemble (and link?) it -- this is probably generating some kind of
> error.

Fiddling with the configure-fragment (running manually) the
compile/link 
aborts because the crt1.o cannot be found:
  bash-2.05b# sparc64-unknown-linux-gnu-gcc -m64 -mcpu=ultrasparc 
  -mtune=ultrasparc -o conftest.bin   -g -O2 conftest.s
  /home/lfs/cross-tools/bin/../lib/gcc/sparc64-unknown-linux-gnu
  /4.0.2/../../../../sparc64-unknown-linux-gnu/bin/ld: crt1.o: No 
  such file: No such file or directory
  collect2: ld returned 1 exit status

This disables the TLS support. Is this normal as TLS support is patched
in ?

Frans




	

	
		
___________________________________________________________________________ 
Appel audio GRATUIT partout dans le monde avec le nouveau Yahoo! Messenger 
Téléchargez cette version sur http://fr.messenger.yahoo.com



More information about the lfs-dev mailing list