2011-09-20 10 views
7

Quiero que algunos comandos se ejecuten automáticamente cada vez que se detiene el programa, al igual que lo que hace la pantalla con x. ¿Cómo puedo hacer eso?En GDB, ¿cómo ejecuto un comando automáticamente cuando se detiene el programa? (como la pantalla)

+1

bien lo encontré por mí mismo. Lo publico aquí en caso de que alguien más lo necesite. [CR] definen gancho de parada [CR] ... comandos a ejecutar cuando la ejecución se detiene [CR] final [CR] ' Ver [esta página] (http://sourceware.org/gdb/ current/onlinedocs/gdb/Hooks.html # Hooks) del manual de GDB para más detalles – neuron

+0

¡Por qué no escribes eso como una respuesta, puede ser útil para todos! – Kevin

+0

posible duplicado de [Obtener gdb para hacer una 'lista' después de cada paso] (http://stackoverflow.com/questions/4362581/get-gdb-to-do-a-list-after-every-step) –

Respuesta

3

Otra forma "nueva" de hacerlo es con el Python Event interface:

def stop_handler (event): 
    print "event type: stop" 

gdb.events.stop.connect (stop_handler) 

que activará la función de cada uno de los stop_handler los topes inferiores.

Hay otros dos eventos similares Tipo:

events.cont 
events.exited 

provocó, respectivamente, cuando el inferior se continúa o si existe.

+0

gracias a la respuesta – neuron

Cuestiones relacionadas