help-gplusplus
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gdb backtrace for g++ programs showing ?? symbol


From: Jeff Schwab
Subject: Re: gdb backtrace for g++ programs showing ?? symbol
Date: Sat, 23 Feb 2008 08:54:14 -0800
User-agent: Thunderbird 2.0.0.9 (X11/20071031)

naam nahin wrote:
Hi,

I am trying to debug a C++ program on Linux. g++ version is 4.1.3.

While debugging the program under gdb, I get a SIGABRT with the following backtrace:

#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb7ce7875 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb7ce9201 in abort () from /lib/tls/i686/cmov/libc.so.6
#3 0xb7ef36e0 in __gnu_cxx::__verbose_terminate_handler () from /usr/lib/libstdc++.so.6
#4  0xb7ef0f65 in ?? () from /usr/lib/libstdc++.so.6
#5  0xb7ef0fa2 in std::terminate () from /usr/lib/libstdc++.so.6
#6  0xb7ef10ca in __cxa_throw () from /usr/lib/libstdc++.so.6
#7  0x08048a5e in foo ()
#8  0x08048ac6 in main ()

It is expected because I am not catching the exception I am throwing.

However, I don't know why I see "??" as the function symbol in frame 4. Why can't gdb show me the function name for that function?

Because it can't find the debug symbols for the file. When the .so is compiled, GCC has to be given the -g flag, or no debug symbols will be produced.

I'm not sure how you can find debug symbols for your libstdc++, short of re-compiling it.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]