link problem building current libstdc++
Jerry Quinn
jlquinn@optonline.net
Thu Dec 16 02:32:00 GMT 2004
Jerry Quinn wrote:
> I'm working off a fresh update and did a configure from scratch,
> followed by make (not bootstrap). I'm dying on an mt-allocator link
> issue. My config was:
>
> # ../gcc/configure --program-suffix=dev --with-system-zlib
> --with-cpu=athlon
> --with-gcc-version-trigger=/home/jlquinn/gcc/dev/gcc/gcc/version.c
> --enable-languages=c,c++,java
>
> This is on debian testing with an x86 athlon, using gcc 3.3.4.
>
> Here's the build death:
>
> make[3]: Entering directory
> -lm -Wl,--rpath -Wl,/home/jlquinn/gcc/dev/build/gcc -Wl,--rpath
> -Wl,/home/jlquinn/gcc/dev/build/i686-pc-linux-gnu/libstdc++-v3/src/.libs
> /home/jlquinn/gcc/dev/build/i686-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so:
> undefined reference to `__gnu_cxx::__mt_alloc<char,
> __gnu_cxx::__common_pool_policy<true> >::deallocate(char*, unsigned int)'
> /home/jlquinn/gcc/dev/build/i686-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so:
> undefined reference to
> `__gnu_cxx::__common_pool_policy<true>::_S_get_pool()'/home/jlquinn/gcc/dev/build/i686-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so:
> undefined reference to `__gnu_cxx::__mt_alloc<char,
> __gnu_cxx::__common_pool_policy<true> >::allocate(unsigned int, void
> const*)'
I dug up some more info. First, user of the missing symbol is string-inst.o.
The second issue I see is that there is only one template arg for
common_pool_policy. Yet all the code I can find shows two args.
So one question is whether partial specializations will result in the compiler
not printing out the template arg when it sees a problem.
BTW, if I pull the symbol out of string-inst.o and print it with c++filt, it
is missing the second template arg.
Jerry Quinn
More information about the Libstdc++
mailing list