prog:gdb
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| prog:gdb [2017/07/04 17:35] – Création avec "Breakpoints" et "La pile" root | prog:gdb [2024/04/05 11:31] (Version actuelle) – Complétion des breakpoints root | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | =====Breakpoints===== | + | [[https:// |
| - | ====La liste==== | + | |
| + | =====Lancement===== | ||
| + | * Soit les paramètres de l' | ||
| + | |||
| + | gdb --args program args | ||
| + | |||
| + | * Soit le dump à analyser : | ||
| + | |||
| + | gdb program dump | ||
| + | gdb -c dump | ||
| + | |||
| + | =====Options===== | ||
| + | |||
| + | ====Par défaut==== | ||
| + | |||
| + | Ajouter dans le fichier '' | ||
| + | |||
| + | ====Description==== | ||
| + | |||
| + | Ne plus avoir de points d' | ||
| + | |||
| + | =====Points d' | ||
| + | |||
| + | * La liste | ||
| info breakpoints | info breakpoints | ||
| info watchpoints | info watchpoints | ||
| - | ====Les enlever==== | + | * Les enlever |
| clear | clear | ||
| delete n | delete n | ||
| - | =====La pile===== | + | * Les désactiver |
| - | Seulement la hiérarchie des fonctions | + | |
| + | Certaines applications génèrent beaucoup d' | ||
| + | |||
| + | handle SIGSEGV nostop noprint pass | ||
| + | |||
| + | * Suivre les enfants / fork | ||
| + | |||
| + | set follow-fork-mode child | ||
| + | |||
| + | ====Conditions==== | ||
| + | |||
| + | b Message.cpp: | ||
| + | |||
| + | ====Exception==== | ||
| + | |||
| + | Mettre un point d' | ||
| + | |||
| + | =====Démarrer le débogage===== | ||
| + | |||
| + | Avec un point d' | ||
| + | |||
| + | start | ||
| + | |||
| + | Sans point d' | ||
| + | |||
| + | run | ||
| + | |||
| + | =====Une fois arrêté===== | ||
| + | |||
| + | ====La pile==== | ||
| + | |||
| + | * Seulement la hiérarchie des fonctions | ||
| bt | bt | ||
| - | Avec les variables locales | + | * Avec les variables locales |
| bt full | bt full | ||
| + | |||
| + | ====Afficher le code==== | ||
| + | |||
| + | * Afficher plus que la seule ligne en cours | ||
| + | |||
| + | list | ||
| + | |||
| + | * Activer l' | ||
| + | |||
| + | CTRL+X + CTRL+A | ||
| + | |||
| + | * Rafraîchir l' | ||
| + | |||
| + | CTRL+L | ||
| + | |||
| + | * Multi fenêtre | ||
| + | |||
| + | CTRL+X + 2 | ||
| + | Répéter de fois autant de nécessaire pour avoir la combinaison de fenêtre : code C / code assembleur, code assembleur / registres, registres / code C. | ||
| + | | ||
| + | Pour modifier le contenu de la fenêtre des registres, il faut faire '' | ||
| + | |||
| + | * Touches haut et bas | ||
| + | |||
| + | Avant les touches haut et bas permettaient de faire défiler les commandes précédentes / suivantes. En mode TUI, haut et bas font défiler la fenêtre en cours. Il faut utiliser '' | ||
| + | |||
| + | =====Naviguer dans le débogage===== | ||
| + | |||
| + | * Avancer d'une ligne de code sans entrer dans une éventuelle sous-fonction | ||
| + | |||
| + | next | ||
| + | |||
| + | * Avancer d'une ligne de code en entrant dans une éventuelle sous-fonction | ||
| + | |||
| + | step | ||
| + | |||
| + | * Reprendre le cours de l' | ||
| + | |||
| + | continue | ||
| + | |||
| + | =====Scripts===== | ||
| + | |||
| + | * Relancer l' | ||
| + | |||
| + | Utile si le plantage d'un programme est aléatoire | ||
| + | |||
| + | Mettre un point d' | ||
| + | |||
| + | Taper : | ||
| + | command 1 | ||
| + | record | ||
| + | continue | ||
| + | end | ||
| + | |||
| + | command 2 | ||
| + | run | ||
| + | end | ||
| + | |||
| + | =====Bugs===== | ||
| + | |||
| + | ====decode_line_full: | ||
| + | |||
| + | Il faut supprimer tous les '' | ||
| + | [[https:// | ||
| + | |||
| + | N' | ||
prog/gdb.1499182517.txt.gz · Dernière modification : de root
