Trabajo en una aplicación financiera (Linux/C++/gcc) que usa impulso y plantillas de forma extensiva. Las trazas de pila generadas durante la depuración a través de GDB son terriblemente complejas con el cableado de plantilla interno de refuerzo que agrega un montón de ruido desagradable a la salida. ¿Alguien sabe de una manera de obtener un stack más limpio, más bonito y más perspicaz para el código de la plantilla de C++ (especialmente sobrecargado)?Rastros de pila más limpios y bonitos en GDB para plantilla C++ (en su mayoría impulso) -código pesado
6
A
Respuesta
3
El soporte de Python en las versiones más nuevas de GDB se ha utilizado para proporcionar lindas impresoras para estructuras pesadas de plantillas como el STL.
No he probado nada de esto a mí mismo. Desafortunadamente, parece que agregar soporte para Boost y limpiar los rastros de pila (a diferencia de los valores de impresión bonitos) puede implicar rolar algunos de sus propios códigos Python.
Cuestiones relacionadas
- 1. Obteniendo rastros de pila en Perl?
- 2. ¿Alguna razón para no registrar siempre los rastros de pila?
- 3. Obteniendo rastros de pila en sistemas Unix, automáticamente
- 4. Rastros de pila MonoTouch no detallados
- 5. Pruebas unitarias con rastros de pila completos
- 6. Limpiar rastros de pila en Groovy usando Eclipse?
- 7. Python: eliminando los rastros de pila en el código de la biblioteca?
- 8. GWT: ¿envía errores de cliente/rastros de pila al servidor?
- 9. ¿Cómo extraer los rastros de pila de minivolcados?
- 10. Deshabilitar rastros de la pila HTML por Xdebug
- 11. ¿Puedo obtener los rastros de la pila de todos los hilos en mi aplicación C#?
- 12. Rails/Ruby: ¿Alguna manera de acortar los rastros de pila?
- 13. Bloquear pila y cola libres en C#
- 14. depuración Código de C++ con plantillas y STL con gdb
- 15. impulso :: método de plantilla de clase enable_if
- 16. PermGen y Pila, Diferencia y su significado
- 17. Asignación de pila en C
- 18. ¿Cómo puedo decirle al compilador que ignore un método en los rastros de pila?
- 19. Establecer el punto de interrupción en el código C o C++ programáticamente para gdb en Linux
- 20. Hilo pesado y ligero
- 21. Uso adecuado de pila y pila en C++?
- 22. Habilitación de las clases para su uso con impulso :: lexical_cast
- 23. Uso de GDB para inspeccionar la pila de la máquina
- 24. Django: cómo obtener rastros de pila para advertencias de tiempo de ejecución
- 25. Deseche su plantilla en f #
- 26. Editar y continuar en GDB
- 27. ¿Cuál es la dirección del crecimiento de la pila en la mayoría de los sistemas modernos?
- 28. Diagramas UML que en realidad son bonitos?
- 29. Herramienta para extraer rastros de la pila Java de los archivos de registro
- 30. La mayoría de los comandos difíciles/útiles para el depurador de gdb
¿Qué versión de gdb? ¿Has mirado el posible dup http://stackoverflow.com/questions/432567/debugging-best-practices-for-c-stl-boost-with-gdb?rq=1? –
También podría intentar usar LLDB. – James