I successfully built the toolchain by using the instructions on the hurd website.The package versions are binutils 2.19 from cvs gcc 4.3 from svn glibc 2.7 from cvs I use the toolchain to compile the hurd package,then copied ext2fs.static to a Debian-Hurd machine.It doesn't work.I try to debug it,gdb says the error is in __uselocale:32.I looked the code in glibc locale/uselocale.c.I guess the error is something about thread or tls.I know that glibc now can't compile without tls,So I compiled it with '--without-__thread'.This time ext2fs.static seem to work fine.But when I start my new hurd,It just stopped at 'exec'.I know if everything works well,it will be "exec init proc auth".I don't know how to debug the system, So I download a hurd livecd from www.superunprivileged.org , boot the computer with it and mount the hard drive to a directory.Both 'exec' and 'init' works fine using the cd's glibc.So I changed 'LD_LIBRARY_PATH' to the new compiled glibc,it says like 'cannot load shared library /mnt/myhurd/lib/libc.so.0.3 cannot handle tls'.I don't know if my way is right. Why the static build program can work but the dynamic one can't? I'm sorry for my poor English.
Thanks