This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
RE: loading shared library
- From: "Frank van Eijkelenburg" <frank dot van dot eijkelenburg at technolution dot nl>
- To: "Kevin Buettner" <kevinb at redhat dot com>,"Gnu Debugger mailing list" <gdb at sources dot redhat dot com>
- Date: Fri, 31 Jan 2003 11:53:42 +0100
- Subject: RE: loading shared library
- Reply-to: <frank dot van dot eijkelenburg at technolution dot nl>
> > I tried this, and it was working. At this moment I've upgraded
> my glibc on
> > the target from 2.1.3 to 2.2.4. I also build a complete
> toolchain with glibc
> > 2.2.4. Now I want to debug a simple multithreaded program
> remote. But the
> > following occured:
> >
> > GNU gdb 5.3
> > Copyright 2002 Free Software Foundation, Inc.
> > GDB is free software, covered by the GNU General Public
> License, and you are
> > welcome to change it and/or distribute copies of it under certain
> > conditions.
> > Type "show copying" to see the conditions.
> > There is absolutely no warranty for GDB. Type "show warranty"
> for details.
> > This GDB was configured as "--host=i686-pc-linux-gnu
> --target=arm-linux"...
> > 0x40002a70 in ?? ()
> > (gdb) b 20
> > Breakpoint 1 at 0x8590: file ex1.c, line 20.
> > (gdb) c
> > Continuing.
> >
> > Breakpoint 1, main () at ex1.c:26
> > 26 retcode = pthread_create(&th_a, NULL, process, (void *) "a");
> > (gdb) sharedlibrary
> > Reading symbols from
> /usr/arm/tools/arm-linux/lib/libpthread.so.0...done.
> > Ignoring packet error, continuing...
> > Loaded symbols for /usr/arm/tools/arm-linux/lib/libpthread.so.0
> > Reading symbols from /usr/arm/tools/arm-linux/lib/libc.so.6...done.
> > Error while reading shared library symbols:
> > putpkt: write failed: Broken pipe.
> > Reading symbols from /usr/arm/tools/arm-linux/lib/ld-linux.so.2...done.
> > Error while reading shared library symbols:
> > putpkt: write failed: Broken pipe.
> > putpkt: write failed: Broken pipe.
> > (gdb) show solib-absolute-prefix
> > Prefix for loading absolute shared library symbol files is "/dev/null".
> > (gdb) show solib-
> > solib-absolute-prefix solib-search-path
> > (gdb) show solib-search-path
> > The search path for loading non-absolute shared library symbol files is
> > "/usr/arm/tools/arm-linux/lib".
> > (gdb)
> >
> > It's trying to load the right libraries, but fails on
> libpthread (I can load
> > the other two without any problems). Any idea of what's causing the
> > problem???
>
> Check the following:
>
> 1) That libthread_db.so on the target is from the new glibc.
>
> 2) That your gdbserver (or rda) is built with the libthread_db.so from
> the new glibc. (This is kind of a long shot - so long as it's not
> statically linked it probably shouldn't matter.)
>
> 3) That libpthread.so on target and host (as found in
> /usr/arm/tools/arm-linux/lib/libpthread.so.0) are the same.
>
> Kevin
Thank you very much, it was point 3. I had on my target another libpthread
as on the host. However, both were libpthread-0.9.so (from glibc 2.2.4). But
I saw difference in the filesize.
Frank