This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
Shared library debugging problem under Solaris 8
- From: Alex Paker <alex at sela dot co dot il>
- To: "'gdb at sources dot redhat dot com'" <gdb at sources dot redhat dot com>
- Date: Mon, 5 May 2003 16:47:24 +0200
- Subject: Shared library debugging problem under Solaris 8
Hello,
I have a problem using gdb under Solaris 8 (sparc).
I use gcc 3.2.2 for building shared library. I use -g -fPIC compilation
options and gcc -shared -g for building the library. When I use gdb 5.0 it
can't understand gnu-v3 C++ mangling style, so gdb don't understand the
types (classes) and debugging is impossible. I tried to move to gdb 5.3 that
do understand this mangling style, but I stuck with another problem. When I
print stack after the program's crash all the stack frames that belongs to
my library are printed as following:
0x7f4d8250 in ?? () from /home/..../libfoo.so
It looks like I compile without any debugging information.
Another problem is when I try to set breakpoint in my shared library and
type 'continue' I get the following message:
(gdb) b 'Engine::get_data_from_registry(std::string&)'
Breakpoint 2 at 0x2b7f6c: file /home/..../Engine.cpp, line 1185.
(gdb) c
Continuing.
Warning:
Cannot insert breakpoint 2.
Error accessing memory address 0x2b7f6c: I/O error.
The same program may be running in another process.
One more thing. My shared library is very big (about 125M with debugging
information). Maybe it's a problem. When I build a little test (with shared
library and the same compilation options) I didn't get this problem. If the
problem is a library size, how can I handle it?
Any help will be very appreciated.
Thanks in advance,
Alex Paker
alex@sela.co.il