2009-08-11 3 views

Antwort

143

Ich glaube nicht (aber ich kann falsch liegen). Sie können etwas tun:

 
(gdb) define fn 
> finish 
> next 
> end 

Und dann geben Sie einfach:

 
(gdb) fn 

Sie können dies auch in Ihrem ~/.gdbinit Datei eingeben, damit es immer verfügbar ist.

+1

Schlechte Methode, wenn gdb aufgerufen wird, nur um Stacktrace des Aufrufers zu drucken: 'execlp (" gdb "," gdb "," -batch "," -n "," -ex "," bt full ", .. .' und ich kann die Seitennummerierung nicht ausschalten –

+1

lebensverändernd !! –

+1

Und wenn Sie vergessen haben, wie Sie eine Funktion definiert haben, können Sie 'show user ' verwenden, um die Quelle zu sehen, zB 'show user fn'. – ntc2

8

GDB hat kein solches Trennzeichen. Ich sah den Fall kurz, wäre es leicht, ein hinzufügen, aber leider nicht ....

29

Wenn Sie gdb von der Kommandozeile ausgeführt werden, können Sie mehrere Befehle mit dem -ex Parameter wie geben:

$ gdb ./prog -ex 'b srcfile.c:90' -ex 'b somefunc' -ex 'r -p arg1 -q arg2' 

Dies gekoppelt mit dem Display und anderen Befehlen macht das Ausführen von gdb weniger umständlich.