Je dirige gdb et je veux examiner l'un de ces objets dieux malheureux. Il faut beaucoup de pages (et j'ai un écran de 24 pouces tourné sur le côté!) Pour voir le tout. Pour plus de facilité, j'aimerais que gdb imprime l'objet dans un fichier au lieu de l'écran afin de pouvoir l'ouvrir dans vi et se déplacer avec facilité Avec toute la polyvalence de gdb, il doit y avoir un moyen de le faire, non?
104
set logging redirect on
.set logging file my_god_object.log
avantset logging on
?tail -f
et aawk
été vraiment utile aujourd'hui. Merci!J'ai trouvé que vous pouvez rediriger la sortie de gdb vers un fichier via la
run
commande:la source
Extension de la réponse de @ qubodup
le
-ex
commutateur exécute une commande gdb. Ainsi, ce qui précède charge le fichier principal, exécute labt
commande, puis laquit
commande. La sortie est écrite surbacktrace.log
et également sur l'écran.Un autre appel gdb utile (donnant stacktrace avec les variables locales de tous les threads) est
la source
gdb -c core.3599 ...
Depuis https://sourceware.org/gdb/onlinedocs/gdb/Logging-Output.html :
la source
Une méthode simple pour enregistrer gdb dans un fichier tout en affichant la sortie (ce qui facilite l'écriture des commandes) consiste à utiliser
tee
:la source
Bien qu'il y ait beaucoup de bonnes réponses ici, je dois encore poster la seule chose qui a fonctionné pour moi:
C'était le seul moyen d'obtenir gdb et la sortie binaire dans le même fichier log.txt, tout en le voyant également sur la console.
ÉDITER:
Attention: la sortie semble ne pas être partiellement synchronisée entre la sortie gdb et la sortie binaire. Quelqu'un peut-il confirmer? Vous voudrez peut-être vérifier si votre client telnet / ssh a une fonction pour enregistrer la sortie que vous voyez dans votre console.
la source
Vous avez eu plusieurs réponses ici. Ils sont corrects. Je veux juste ajouter une commande qui vous aidera à collecter toutes les sorties à la fois. Ceci est vraiment utile lorsque vous collectez un énorme backtrace. Avant d'effectuer toute configuration de journalisation, procédez comme suit:
Je l'ai trouvé sur cet article: https://askaralikhan.blogspot.com/2016/05/gdb-all-threads-bt-to-file.html?showComment=1584614942454#c4584028195226351332
la source