gdb

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
gdb [2024/02/23 17:25] – add how to breakpoint all functions matching a regex phswgdb [2025/03/05 12:16] (Version actuelle) – Add how to generate a core dump phsw
Ligne 13: Ligne 13:
  
  
-==== Afficher les valeurs des variables dans une autre base ====+==== Affichages ==== 
 + 
 +=== Afficher les valeurs des variables dans une autre base ===
  
 [[https://stackoverflow.com/questions/9671820/print-variables-in-hexadecimal-or-decimal-format|Source]] [[https://stackoverflow.com/questions/9671820/print-variables-in-hexadecimal-or-decimal-format|Source]]
Ligne 20: Ligne 22:
 print/x var # affiche en hexa print/x var # affiche en hexa
 print/t var # affiche en binaire print/t var # affiche en binaire
 +</code>
 +
 +
 +=== Chaînes de caractères en C++ ===
 +
 +Afficher le contenu de la chaîne de caractères de type ''std::string'' en C++ ([[https://stackoverflow.com/questions/6776961/how-to-inspect-stdstring-in-gdb-with-no-source-code|source]]) :
 +<code>
 +print *(char**)0x7fffffffda88
 </code> </code>
  
Ligne 109: Ligne 119:
 <code> <code>
 set history save on set history save on
 +</code>
 +
 +
 +
 +==== S'assurer que les symboles de debug existent ====
 +
 +La ligne suivante doit renvoyer quelque chose (on peut éventuellement greper ''debug'' ; [[https://stackoverflow.com/questions/3284112/how-to-check-if-program-was-compiled-with-debug-symbols|source]]) :
 +<code bash>
 +objdump --syms $fichier
 +</code>
 +
 +
 +==== Générer un core dump ====
 +
 +Depuis GDB :
 +<code>
 +generate-core-file [/chemin/vers/le/core.foo]
 +</code>
 +
 +Sans ouvrir GDB :
 +<code bash>
 +gcore $pid
 </code> </code>
  • gdb.1708705528.txt.gz
  • Dernière modification : 2024/02/23 17:25
  • de phsw