http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49541
--- Comment #2 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> 2011-07-06 14:06:59 UTC --- > --- Comment #1 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2011-07-06 > 08:52:17 UTC --- > Rainer, any idea to solve this? One comment up front: It's best to directly Cc: me in PRs, otherwise I may easily miss them. It took me some time to understand why this didn't hit me in my S8 bootstraps, but they run in an S8 branded zone, where the alternate thread library is copied over the default one, so __tls_get_addr is also found in /lib/sparcv9/libthread.so. Trying on our only native S8 machine, I see the same failure. I think the only solution is to move LIB_THREAD_LDFLAGS_SPEC out of LIB_SPEC (which is way too late, as you've observed) and into or in front of LINK_ARCH_SPEC where all the other -L/-R flags are passed. I'll have a look at this. Rainer