Articles of gdb

Pourquoi gdb casting ne fonctionne pas?

J’utilise print (CEthPacket*) 0xeb609a0 pour examiner un object à l’adresse donnée et obtenir A syntax error in expression, near ‘) 0xeb609a0′. Qu’est-ce que je fais mal? EDIT: CEthPacket est une classe C ++ et je suis sur gdb Fedora (6.8-37.el5).

Appelez gdb pour transmettre automatiquement des arguments au programme en cours de débogage

Je voudrais écrire un script qui (sous certaines conditions) exécutera gdb et exécutera automatiquement un programme X avec un certain nombre d’arguments. . Une façon de faire cela serait de faire en sorte que le script affiche la commande run plus les arguments Y dans un fichier F et que le script appelle gdb comme […]

Comment puis-je réexécuter un programme avec gdb jusqu’à ce qu’une erreur de segmentation se produise?

Mon programme a un problème de segmentation, mais il est rarement défectueux (une fois sur 20 ou plus), et pour le déboguer dans GDB, je dois relancer manuellement le programme jusqu’à ce que l’erreur de segmentation se produise (pendant une demi-journée échoue 🙁 ). Les questions sont donc les suivantes: existe-t-il un moyen de demander […]

Comment activer la jolie impression de gdb pour les objects STL C ++ dans Eclipse CDT?

J’essaie d’append une jolie impression pour les objects STL dans eclipse cdt. J’ai essayé de suivre les étapes décrites ici: http://sourceware.org/gdb/wiki/STLSupport J’ai vérifié le dossier python, mais je n’arrive pas à le faire … J’ai créé un gdbinit et sélectionné pour ma configuration de débogage, mais chaque fois que j’essaie de déboguer, j’obtiens l’erreur suivante: […]

GDB ne fonctionne pas sur MacOS Sierra

C’est un problème qui est apparu lors de ma première mise à jour vers macOS Sierra hier. GDB lui-même fonctionne correctement. Cependant, en quelque sorte, il ne peut pas exécuter mon programme. Lorsque je tape “exécuter” et “entrer”, il se bloque immédiatement avec les informations suivantes: During startup program terminated with signal SIG113, Real-time event […]

Comment déterminer si un object est une instance de certaines classes C ++ dérivées d’un pointeur vers une classe de base dans GDB?

Je débogue un programme C ++ avec GDB. J’ai un pointeur sur un object d’une certaine classe. Le pointeur est déclaré comme appartenant à une super classe étendue par plusieurs sous-classes. Il n’y a pas de champs dans l’object pour spécifier le type de classe précis de cet object, mais certaines fonctions virtuelles (par exemple, […]

Débarrassez-vous de l’invite «quit anyway» en utilisant GDB: Il suffit de tuer le processus et de quitter

Considérer: (gdb) q A debugging session is active. Inferior 1 [process 9018] will be killed. Quit anyway? (y or n) y Qu’est-ce .gdbinit option .gdbinit pour que GDB tue toujours le processus en cours à la demande de .gdbinit ? Je sais que GDB peut s’attacher à des processus déjà en cours, il serait donc […]

Est-il possible de déboguer un programme compilé avec gcc en utilisant lldb, ou de déboguer un programme compilé par clang en utilisant gdb?

(Préface: C / C ++ est assez récent et je ne sais pas vraiment comment fonctionne le débogage en code natif.) Certaines sources disent que gdb et lldb peuvent déboguer tout programme compilé en code machine . D’autres disent que pour déboguer avec gdb, vous devez comstackr en gcc avec l’ -g . La documentation […]

Débogueurs GDB Vs LLDB

Quelle est la différence entre les débogueurs GDB et LLDB? J’ai récemment mis à niveau ma version Xcode de 4.2 à 4.3 et commencé à recevoir un avertissement pour mettre à niveau mon débogueur de GDB vers LLDB.

Comment casser quand un type d’exception spécifique est lancé dans GDB?

Selon la documentation, je peux rompre avec un type d’exception spécifique en utilisant des points d’arrêt conditionnels. Cependant, la syntaxe de la condition n’est pas très claire pour moi: condition bnum En regardant la syntaxe de l’expression, je pense que c’est le modèle dont j’ai besoin: {type} addr Cependant, je ne sais pas ce que […]