J'ai généralement utilisé Emacs GUD comme interface GDB.
Ce n'est pas trop difficile à utiliser, vous permet pour définir visuellement les points d'arrêt (ou via la fenêtre GDB si vous préférez).
Il a plusieurs vues différentes auxquelles vous pouvez accéder à partir d'un menu GDB de niveau supérieur:
Il permet également des astuces telles que vous permettre d'inspecter les valeurs en les survolant:
Pour l'utiliser, vous devez d'abord naviguer vers le dossier de votre binaire avec Cx Cf
, puis Mx gdb
(c'est " Alt + X
", puis en tapant" gdb
"). Après cela, vous pouvez taper une ligne de commande gdb, ou simplement appuyer sur [Entrée]
pour accepter sa valeur par défaut. À partir de là, il vous suffit de taper "démarrer" dans la fenêtre gdb avec tous les paramètres que vous voulez passer au programme que vous déboguez.
Après cela, vous êtes quasiment en or, mais avec une seule vue. Les menus en haut de l'écran sous "GUD" vous permettront d'ouvrir d'autres vues pertinentes pour tout ce que vous essayez de déboguer. (Les cadres sont des fenêtres séparées et "Windows" sont des fenêtres dans le cadre)
Habituellement, un point d'arrêt est défini au démarrage du programme, et vous pouvez ensuite naviguer dans votre code à l'aide des boutons en haut de la fenêtre, ou si vous n'avez pas de code, vous pouvez personnaliser votre vue pour vous permettre de procéder au démontage du binaire que vous regardez.
Les boutons en haut de la fenêtre entourés de "{} "sont pour le pas au niveau du code, et les boutons avec" <> "dans leur icône sont pour le débogage au niveau des instructions. Donc, vous voudrez probablement vous concentrer sur la gauche si vous faites du débogage de code normal, et vous concentrer davantage sur la droite si vous entrez dans le vif du sujet.
De plus, si jamais vous vous perdez, cette icône:
C'est un livre entier qui peut probablement répondre à vos questions. La seule fois où il n'existera pas dans Emacs, c'est si vous êtes sur Debian (Ubuntu est bien) et avez installé Emacs à partir de ses dépôts. Dans ce cas, vous devrez installer " emacs<vesrsion>-common-non-dfsg
" pour obtenir les manuels. (Avec " <version>
" étant les chiffres non décimaux renvoyés par la version M-x
dans Emacs)