Puede publicar los comandos más complicados y útiles mientras ejecuta un depurador como gdb o dbx.La mayoría de los comandos difíciles/útiles para el depurador de gdb
Respuesta
- traza completa: traza completa con variables locales
- hasta, abajo, marco: Mover a través de marcos
- reloj: suspender el proceso cuando se cumple una determinada condición
- impresión de conjunto bastante en: Imprime graciosamente con formato de código fuente en C
- establecer el registro en: registro de la sesión de depuración para mostrar a los demás para el apoyo
- La matriz de conjuntos de impresión en: array Bastante impresión
- acabado: Continuar hasta el final de la función
- activar y desactivar : Enab LE/desactivar los puntos de interrupción
- TBREAK: romper de una vez, y luego eliminar el punto de interrupción
- donde: en la actualidad el número de línea se ejecuta
- información locales: Ver todas las variables locales
- información args : Ver todos los argumentos de función
- lista: ver fuente
- RBREAK: rotura en función de concordancia de expresiones regulares
Por ejemplo las macros definidas en stl-views.gdb
thread apply all bt
o thread apply all print $pc
: Para encontrar rápidamente lo que todos los temas están haciendo.
¡Ese era el comando que estaba buscando desde hace mucho tiempo! ¡Es desagradable comprobar los 30 hilos uno por uno! – tothphu
AKA: t a a bt. –
A partir de GDB 7.0, hay reversible debugging, por lo que sus nuevos comandos favoritos son:
* reverse-continue ('rc') -- Continue program being debugged but run it in reverse
* reverse-finish -- Execute backward until just before the selected stack frame is called
* reverse-next ('rn') -- Step program backward, proceeding through subroutine calls.
* reverse-nexti ('rni') -- Step backward one instruction, but proceed through called subroutines.
* reverse-step ('rs') -- Step program backward until it reaches the beginning of a previous source line
* reverse-stepi -- Step backward exactly one instruction
* set exec-direction (forward/reverse) -- Set direction of execution.
En lugar de lanzar con el BGF "-tui" param también puede cambiar al modo de texto después de un tiempo escribiendo "wh".
¿Cómo se puede volver? –
Ctrl-a a para volver a la vista de línea de comando 'normal'! – Kevin
"- 'se puede usar instaed de' wh '. Cuanto más corto mejor ... :) –
scripting gdb es un buen truco, aparte de eso me gusta establecer el bloqueo del programador on/off para evitar el funcionamiento de otros hilos cuando se está caminando en uno.
¿Cómo se configura el bloqueo del programador? –
'establecer planificador-bloqueo en' dentro de gdb – Ben
¿cómo se hace esto el valor predeterminado? Lo probé .gdbinit pero gdb imprime /home/omry/.gdbinit:1: Error en el archivo de comando de origen: El objetivo 'Ninguno' no puede soportar este comando. –
- Usando .gdbinit (archivo de inicio donde puede escribir macros y llamar desde gdb). .gdbinit lugar en su directorio personal para que se recoge cada vez que se carga el BGF
información roscas para listar todos los hilos activos, y f (#) -> número # hilo que desea cambiar a
en algún momento yo uso gDB convertir de hexadecimal a decimal o binario, es muy práctico en lugar de abrir una calculadora
- p/d 0x10 -> da equivalente decimal de 0x10
- p/t 0x10 - > equivalente binario de 0x10
- p/x 256 -> hexadecimal equivalente de 256
El uso de la opción -command=<file with gdb commands>
mientras se dispara hasta el BGF. Lo mismo que -x <command file>
. Este archivo de comandos puede contener comandos gdb como puntos de interrupción, opciones, etc. Útil en caso de que un ejecutable en particular deba pasar por sucesivas ejecuciones de depuración usando gdb.
También puede usar la opción '-iex' para agregar comandos individuales en la línea de comando de gdb. – doug65536
Esto puede ser útil, estoy seguro de que podría mejorarse sin embargo, ayudar bienvenidos:
define mallocinfo
set $__f = fopen("/dev/tty", "w")
call malloc_info(0, $__f)
call fclose($__f)
Para STL depurar, agregar contenido a .gdbinit, siga estas instrucciones:
Idéntico a la respuesta de grigy. – DevSolar
En lugar de iniciar gdb con la opción -tui para ver un proceso secundario que contiene una pantalla que resalta dónde se encuentra la línea de código ejecutable en su programa, salte y salga de esta función con Cx o y Cx a. Esto es útil si está usando la función y qué no usarla temporalmente para que pueda usar la flecha hacia arriba para obtener un comando anterior.
puede cambiar el enfoque a la ventana de comandos usando 'focus cmd' para que las flechas arriba/abajo funcionen. Usted vuelve a usar 'focus src'. –
- 1. depurador gdb múltiples archivos de origen
- 2. características de SQL Server/comandos que la mayoría de los desarrolladores son conscientes de
- 3. ¿Cómo uso el depurador mingW gdb para depurar un programa C++ en Windows?
- 4. ¿La mayoría de los navegadores buscan automáticamente el favicon.ico?
- 5. ¿Cómo puedo hacer que gdb guarde el historial de comandos?
- 6. Estrategia para la extracción de los mensajes de la mayoría de las confirmaciones útiles para changelog
- 7. ¿Cómo imprimir los contenidos de una propiedad usando Xcode depurador?
- 8. El depurador de secuencias de comandos de Visual Studio 2010 no funciona para mí
- 9. Seleccionar mayoría de los Estados Recientes De la Tabla Historia
- 10. Compilación de GDB para la depuración remota
- 11. Encontrar la mayoría de los objetos repetidos en la matriz
- 12. a una función miembro en el depurador de Python
- 13. ¿Cómo modificar los contenidos de la memoria usando GDB?
- 14. ¿Cómo funciona un depurador como gdb para establecer un punto de interrupción a través de JTAG?
- 15. ¿Por qué la mayoría de los ejemplos que usan ArrayList
- 16. mysql - seleccione coincidir con la mayoría de los caracteres
- 17. ¿Cómo incluir el carácter de porcentaje en los argumentos de la línea de comandos del depurador visual studio?
- 18. Problemas al pasar el ratón sobre los nombres de las variables en el depurador de iPhone
- 19. Cómo adjuntar el depurador de Visual Studio desde la línea de comandos
- 20. Los mismos campos en la mayoría de las tablas
- 21. ¿Por qué se desaprobaron la mayoría de los métodos java.util.Date?
- 22. Google Chrome Javascript Depurador y secuencias de comandos de contenido
- 23. ¿Hay un depurador de línea de comandos Scala?
- 24. Encontrar la mayoría de los archivos modificados en Git
- 25. ¿Funciona el documento document.domain en todos (la mayoría) de los navegadores?
- 26. ¿Puedo deshabilitar la advertencia "Actualizar depurador de GDB a LLDB" en XCode 4.3.2?
- 27. Cómo configurar el ancho de la memoria GDB examine (x) o imprima (p) comandos?
- 28. gdb - cómo imprimir el resultado de la evaluación para C++
- 29. ¿Puedo evitar que el depurador ingrese en los archivos de encabezado de STOP o STOP?
- 30. ¿Cómo inspeccionar el valor de retorno de la función de JavaScript en el depurador de Chrome?
'info locals' - Ver todas las variables locales; lista - ver fuente; rbreak - interrupción de la función que coincide con la expresión regular. –
source/path/to/macro/file Y todas mis ingeniosas macros están ahí para ayudarme a depurar en segundos. – Sudhanshu
'set print object on' para elementos polimórficos y' set print elements 0' son dos comandos que uso muy a menudo. Bastante útil. –