utilizar tutorial test para opciones modo depurador debugger debuggear debug con debugging gdb

debugging - tutorial - Múltiples comandos en gdb separados por algún tipo de delimitador '';''?



modo debug linux (4)

GDB no tiene dicho carácter separador de comando. Miré brevemente, en caso de que fuera fácil agregar uno, pero desafortunadamente no ...

Estoy tratando de ejecutar dos comandos a la vez en gdb:

finish; next

Intenté usar el '';'' para separar los comandos, pero gdb no me permitió hacer ambas cosas a la vez.

¿Es posible hacer varios comandos en gdb similares a los comandos bash separados por '';'' delimitador?


Me encontré con otra forma de hacer múltiples comandos en GDB usando un documento Bash HERE.

ejemplo:

cat << EOF | gdb print "command_1" print "..." print "command_n" EOF

esto tiene IMO de valor / usabilidad limitado porque GDB se cierra después de ejecutar la lista de comandos.


No lo creo (pero puedo estar equivocado). Puedes hacer algo como esto:

(gdb) define fn > finish > next > end

Y luego solo escribe:

(gdb) fn

Puedes poner esto en tu archivo ~/.gdbinit también para que esté siempre disponible.


Si está ejecutando gdb desde la línea de comandos, puede pasar múltiples comandos con el parámetro -ex como:

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

Esto, junto con la pantalla y otros comandos hace que ejecutar gdb sea menos engorroso.