Voir/Imprimer la fonction de code à partir de GDB

Je suis en train d'élaborer un texte simple interface utilisateur qui exécute certaines commandes gdb.
Je veux de l'utilisateur pour être en mesure de définir et de pause/trace point à une certaine zone du code et exécuter des commandes de débogage.

Je veux utilisateur d'entrer la fonction qui doit être débogué. J'ai ensuite prendre le nom de cette fonction et d'imprimer le code source de la fonction, puis de demander à l'utilisateur de sélectionner la ligne de code pour définir la pause/trace point. Pour le moment, à l'aide de la démonter commande je peux imprimer les adresses de mémoire pour l'utilisateur, mais je veux imprimer le code source à la place.

Cela peut-il être fait dans gdb?

Actuellement:

Dump of assembler code for function test_function:
   0x03800f70 <test_function+0>:  push   %ebp
   0x03800f71 <test_function+1>:  mov    %esp,%ebp
   0x03800f73 <test_function+3>:  sub    $0x48,%esp

Ce que je veux:

void main()
{
  printf("Hello World\n");
}

Merci!

EDIT:
J'obtiens ceci:

(gdb) list myFunction
941     directory/directory_etc/sourcefile.c: No such file or directory.
        in directory/directory_etc/sourcefile.c

ensuite, j'ai essayé en précisant numligne:

(gdb) list directory/directory_etc/sourcefile.c:941
936     in directory/directory_etc/sourcefile.c

De sorte que le comportement est similaire à ce que vous décrivez, mais "liste de nom de fichier:numligne" n'est toujours pas de travail

Merci!

OriginalL'auteur user2342775 | 2013-05-08