Ho usato gdb normalmente per 1 o 2 progetti. Cioè Invoco lo gdb --args prog args
. gdb gira nella stessa tty del programma che sto eseguendo il debug.attendere che gdb alleghi
Tuttavia, il mio ultimo progetto è la modifica dell'utilità dtach. Questo è un programma come lo schermo, quindi le tty vengono reindirizzate altrove, quindi devo usare la funzionalità attach di gdb.
Il problema con gdb attach è che ovviamente non è possibile allegare sin dall'inizio poiché è necessario eseguire il programma prima per ottenere un pid a cui collegarsi.
C'è un modo per far sì che un programma attenda fino al punto in cui è allegato gdb?
Non riesco a utilizzare gdbserver come sono su cygwin. Inoltre ho provato a usare pause()
, ma questo si è bloccato quando ho provato a continuare.
Il mio male, il messaggio nella mailing list lamentando che gdbserver non funziona su Cygwin era di 9 anni fa. Lo ha compilato ieri sera e funziona bene. Per qualche ragione il binario gdbserver non è incluso nel repository cygwin, probabilmente a causa degli stretti casi d'uso su cygwin. C'è anche un modo potenziale per collegare gdb in programma dall'inizio usando lo stub di debugging gdb. Grazie comunque per le risposte. – rhlee