gdb se détachant après le traitement du processus enfant - désactiver?
Question
Obtenir ce message dans gdb. Je sais que ce n'est pas une erreur ou quoi que ce soit. J'ai aussi fait de la pagination, donc ce n'est pas un problème.
Existe-t-il un moyen de supprimer ce message?
La solution
J'étais curieux de voir que cette question restait sans réponse ...
J'ai obtenu le manuel GDB , et il est dit (en partie - p33 de la version PDF 'Neuvième édition, pour la version 7.0.50.20091228 de gdb'):
Pour être averti du démarrage ou de la sortie d’inférieurs sous le contrôle de gdb
set print inferior-events
:set print inferior-events set print inferior-events on set print inferior-events off
La commande
set print inferior-events
vous permet d'activer ou de désactiver impression des messages quand gdb remarque que de nouveaux inférieurs ont commencé ou que les inférieurs sont sortis ou ont été détachés. Par défaut, ces messages seront ne pas être imprimé.show print inferior-events
Indique si les messages seront imprimés lorsque gdb détectera que les inférieurs ont commencé, quitté ou ont été détachés.
Mon seul souci à ce sujet est que cela implique que vous ne devriez pas voir les messages par défaut. Assurez-vous simplement que vos paramètres correspondent à ceux par défaut et ne les remplacez pas.
La section 4.11 "Débogage des fourches" (pages 38 à 40) vous concerne également.
Autres conseils
J'ai essayé de désactiver les événements inférieurs
, mais le message n'a pas été désactivé. En fait, print inferior-events
était déjà désactivé avant même que j'aie essayé de le désactiver.
J'ai parcouru le code source gdb
et constaté que print inferior-events
contrôlait l'impression des messages "[New inferior% d] "
, "[% inférieur supprimé]"
, et "[inférieur% d détaché]"
uniquement.
Le message Détachement après le traitement du processus enfant
est contrôlé par les options verbose
et debug lin-lwp
. Cependant, sur les systèmes Fedora, le message est toujours imprimé car ils ont un correctif (à savoir gdb-6.6-bz235197-fork-detach-info.patch
) qui tourne
if (info_verbose || debug_linux_nat)
dans
if (1 / * Fedora Bug 235197 * / || info_verbose || debug_linux_nat)
. Donc, vous ne pouvez jamais le désactiver, sauf si vous supprimez le correctif de la source et le compilez à nouveau.