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