[Bug middle-end/55308] /usr/ports/lang/gcc48/work/build/sparc64-portbld-freebsd10.0/libstdc++-v3/src/.libs/libstdc++.so.6: Undefined symbol "__emutls_v._ThreadRuneLocale"

nwfilardo at gmail dot com gcc-bugzilla@gcc.gnu.org
Sun Jan 13 19:52:00 GMT 2013


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55308

nwfilardo at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |nwfilardo at gmail dot com

--- Comment #1 from nwfilardo at gmail dot com 2013-01-13 19:51:53 UTC ---
This appears to be due to r162478; in particular, gcc/configure.ac:3163 is     
           tls_as_opt="-32 --fatal-warnings", which may be correct for Solaris,
but is certainly wrong on freebsd portbld (where binutils does not support
elf32-sparc-freebsd).  As a result of this mistaken argument to as, the
configuration system does not believe that the machine supports TLS and so
builds an xgcc that does not support it, which yields (after much CPU time) the
reported error message.

Removing the "-32" from gcc/configure.ac (and gcc/configure) does the right
thing for me on my freebsd box, but I won't claim that it's the right fix in
general -- it should probably be conditional either on not-freebsd or
just-solaris.



More information about the Gcc-bugs mailing list