This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Re: libstdc++.so: undefined reference to `___tls_get_addr'
- From: Ian Lance Taylor <iant at google dot com>
- To: "marco turchi" <marco dot turchi at gmail dot com>
- Cc: gcc-help at gcc dot gnu dot org
- Date: 10 Jan 2007 07:46:16 -0800
- Subject: Re: libstdc++.so: undefined reference to `___tls_get_addr'
- References: <79a042480701100725q3b71a916k181e6e791f18897d@mail.gmail.com>
"marco turchi" <marco.turchi@gmail.com> writes:
> Dear All,
> I'm a new user of this mailing list.
> I've this problem.
> I had an old gcc version on my laptop so I downloaded the 4.1 and I
> installed it using the following commands:
>
> configure --enable-shared --with-gnu-as --with-gnu-ld --enable-languages=c,c++
> make bootstrap
> make install
> everything worked, but now when I have to install some software and
> when I run the configure file of this software, I obtain the following
> error during the configure phase:
> configure:2348: checking for C++ compiler default output file name
> configure:2375: g++ conftest.cpp >&5
> /usr/local/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../libstdc++.so:
> undefined reference to `___tls_get_addr'
> collect2: ld returned 1 exit status
You are compiling a program which uses __thread. This requires
support from the compiler, the linker, and the C library. It looks
like you need to upgrade your C library.
Or perhaps you can simply configure the program you want to use to
not use __thread (also known as TLS).
Ian