Debuggen von Multithread-Anwendungen mit gdb nicht möglich
Ich debugge eine Multithread-Anwendung mit gdb, aber wenn ich das Programm in gdb starte, bekomme ich die Warnung:
Warnung: Es ist nicht möglich, libthread_db zu finden, das mit der Thread-Bibliothek von inferior übereinstimmt. Das Thread-Debugging ist nicht verfügbar.
Ich kann immer noch debuggen, aber ich kann nichts anderes als den Haupt-Thread debuggen. Ich habe Foren gelesen, in denen vorgeschlagen wird, die Pakete libthread-db1 und glibc-dbg zu installieren, aber das behebt das Problem für mich nicht.
Auf meinem Rechner habe ich die 3 Dateien/lib/libthread_db.so.1
, /lib/.debug/libthread_db-1.0.so
, und/lib/libthread_db-1.0.so
. Ich habe versucht, symbolische Links in zu erstellen/lib
mit dem Namenlibthread_db.so
einmal zeigte auf die/lib/libthread_db.so.1
Datei, und ein anderes Mal zeigt auf die/lib/libthread_db-1.0.so
Datei, und auch ich habe den symbolischen Link erstellt/lib/.debug/libthread_db.so
zeigt auf/lib/.debug/libthread_db-1.0.so
Alles ohne Glück.
In gdb habe ich versucht einzustellenlibthread-db-search-path
zu/lib
(mit dem Symlink einmal gesetzt auflibthread_db.so.1
und einmal zulibthread_db-1.0.so
und auch eingestellt auf/lib/.debug
.
Irgendwelche Vorschläge? Ich benutze Angstrom Linux v2.6.39 für das BeagleBoard-xm.