Domanda

Il programma gdbserver consente il debug remoto dei programmi. In genere, una copia locale di gdb viene utilizzata per interagire con l'istanza gdbserver remota e il programma in esecuzione sotto quel gdbserver remoto.

La mia domanda è: ci sono implementazioni client del gdb remote serial protocol (RSP) che consente a programmi diversi da gdb di interagire con il programma gdbserver?

Questo documento tratta l'implementazione di un server RSP , ma è il lato client che mi interessa principalmente. Questa implementazione supporta client e server, ma è implementato in lisp comune e non è ancora una libreria matura.

È stato utile?

Soluzione

Non sono a conoscenza di alcun client del protocollo GDB.

Perché dovresti volerne uno?

Per attività semplici (avvio; arresto; esame degli indirizzi di memoria) puoi scriverne uno da zero abbastanza rapidamente.

Per compiti complicati (svolgendo stack, esaminando variabili, ecc.) dovresti implementare nuovamente parti significative di GDB; e questo probabilmente non dovrebbe essere tentato senza un motivo molto valido.

Si noti inoltre che il protocollo GDB / gdbserver è in continua evoluzione; ci sono disposizioni per consentire al nuovo GDB di gestire il vecchio server gdbserver, ma non sono sicuro che sia vero anche il contrario.

Altri suggerimenti

Il protocollo gdb remoto è completamente documentato nel manuale gdb, disponibile online all'indirizzo http://sourceware.org/gdb/current/onlinedocs/gdb_toc.html

Devi guardare gdb come esempio funzionante - questo dovrebbe essere sufficiente per permetterti di scrivere un client per controllare gdbserver tramite il protocollo seriale. ; -)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top