È possibile impedire a GDB di caricare i simboli per queste librerie Qt 5 mantenendo i simboli di debug per la mia applicazione?
Sì.
Come il commento di Richard Critten menziona, impostando auto-solib-add
-0
impedirà il caricamento di simboli per tutti librerie condivise, e quindi è possibile aggiungere i file manualmente con il comando sharedlibrary
(che accetta un'espressione regolare). Se questa regex viene omessa, vengono caricate tutte le librerie condivise.
Che però impedirebbe auto-caricamento di tutti i simboli (non solo simboli di debug), e sarebbe anche evitare che auto-caricamento di simboli per librerie di sistema, che sono spesso necessari per svolgere la pila.
Un approccio migliore potrebbe essere quello di salvare una copia delle librerie Qt5 con informazioni complete di debug da qualche parte, ad es. ~/Qt5-debug/
, quindi eseguire strip -g
sulle librerie originali. In questo modo, otterrai informazioni simboliche per tutte le librerie e, nel raro caso in cui hai effettivamente bisogno di informazioni di debug complete per Qt5, puoi comunque farlo utilizzando il GDB file ~/Qt5-debug/libQt5Core.so.5.2
o comandi simili.
Il capitolo GDB Files dal manuale GDB ha più documentazione sull'utilizzo di tali simboli di debug separati.
fonte
2015-08-01 23:36:47
Forse questa pagina: https://developer.mozilla.org/en-US/docs/Using_gdb_on_wimpy_computers potrebbe essere di qualche utilità. –