missing symbol in libstdc++ from 23-11-2000

Gabriel Dos Reis gdr@codesourcery.com
Wed Dec 13 03:19:00 GMT 2000


"Rob Taylor" <robt@flyingpig.com> writes:

| on linking some very complex code that uses wide chars everywhere...
| 
| libstc++.so: undefined reference to
| 'std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t>
| >::basic_string<std::__normal_iterator<wchar_t*, std::basic_string<wchar_t,
| std::char_traits<wchar_t>, std::allocator<wchar_t> > >
| >(std::__normal_iterator<wchar_t*, std::basic_string<wchar_t,
| std::char_traits<wchar_t>, std::allocator<wchar_t> > >,
| std::__normal_iterator<wchar_t*, std::basic_string<wchar_t,
| std::char_traits<wchar_t>, std::allocator<wchar_t> > >, std::allocator<wchar_t>
| const&)'
| 
| any ideas what the problem is?

Hmm, This is the template constructor stuff which appears to have been
fixed a while ago.  Is this from a up-to-date tree?

| also (while I'm here) I had to use c++filt too demangle ld's errors myself.. how
| to I pursuade ld to demangle the new abi?

c++filt has been fixed recently to auto to V3 ABI.  Looks like you're
using a slightly outdated tree.  Could you update and tell us if you're
still seeing the same problem?

To explicitly tell c++filt to demangle V3 ABI, you have to say

	c++filt --format gnu-v3 # for a recent tree

of
	c++filt --format gnu-new-abi # for a slightly outdated tree

-- Gaby
CodeSourcery, LLC                       http://www.codesourcery.com


More information about the Libstdc++ mailing list