multithreaded programs on arm-linux

Frank Meerkoetter frank@betaversion.net
Thu Nov 3 15:51:00 GMT 2005


Quoting Daniel Jacobowitz <drow@false.org>:
[...]
>> I'm not using the gdbserver but rather running the gdb on
>> the target. The reason is that i didn't managed to
>> remote debug a program which is dynamically linked.
>>
>> I assume gdb is linked against libthread_db.so
>
> GDB uses dlopen to get at libthread_db.so.  Does it do that?  Does
> initialization fail?

thread_db_load() which contains the dlopen() call is successfull run.
The end of thread_db_load() is reached and 1 is returned.

> You'll need to attach a debugger to gdb and look at thread_db_init.
> The first call will generally fail but a later one should succeed.

frank@linux:~/gdb/gdb-6.3> global thread_db_init
gdb/gdbserver/thread-db.c
gdb/thread-db.c

thread_db_init of the gdbserver could fail but not thread_db_init
of the gdb.

Regards,
   Frank




More information about the Gdb mailing list