web-dev-qa-db-fra.com

script gdb: exécution de commandes au point d'arrêt sélectionné

Je voudrais prédéfinir certains points d'arrêt dans un script gdb et invoquer certaines commandes spéciales à ces points d'arrêt et ensuite pour continuer automatiquement l'exécution du programme. Donc, idéalement, j'aimerais avoir un script gdb comme celui-ci:

b someFunction
...
if breakpoint from above reached do:
  print var1
  call someOtherFunction
  continue
done

De plus, un fait malheureux est que je ne peux pas compter sur l'interface python pour utiliser les points d'arrêt, car la version gdb sur le serveur sur lequel je travaille actuellement est trop ancienne!

36
Lord Bo

Vous devriez jeter un œil à la commande command, qui vous permet d'ajouter des commandes gdb lorsqu'un point d'arrêt est atteint. Voir la section liste des commandes de points d'arrêt du manuel de gdb.

Par exemple:

break someFunction
commands
print var1
end

sera, lorsque le point d'arrêt sur someFunction est atteint, automatiquement print var1.

44
borrible