El código fuente para el programa de descarga Compiler para el programa de descarga depurador a nivel de fuente con soporte para la visualización de un backtrace
Ver Más instrucciones
1 < p> Vuelva a compilar el programa que está dando el fallo de segmentación para que todos los símbolos de depuración están vinculados a ella. Por ejemplo , para un programa de C + + en cualquier sistema operativo con el conjunto de herramientas GNU , ejecutar : en opcion a Compra
" g+ +- g programa program.c -o "
la " g " instruye al compilador que incluya símbolos de depuración .
2
Ejecutar el programa hasta que se detenga debido a un fallo de segmentación . Por ejemplo, ejecute:
" programa "
3
Invocar el depurador en el programa después de la avería de la segmentación . Por ejemplo, ejecute:
" programa gdb "
4
Muestra una traza utilizando el depurador. Todos los depuradores de nivel de fuente tienen la capacidad de mostrar la cadena de invocaciones de funciones anidadas en el momento de la caída del programa . Para nuestro ejemplo " gdb ", introduzca en el interior " gdb : "
" backtrace "
5
Examine la traza signos de una recursividad infinita . Es un nombre de función repite más veces que sea necesario antes del accidente ? Son algunas de las funciones de llamadas entre sí (por ejemplo , la recursividad mutua) demasiadas veces antes del accidente ? Si la respuesta a cualquiera de estas preguntas es "sí ", el programa se detuvo debido a un desbordamiento de pila. La causa más probable de los desbordamientos de pila en lenguajes de alto nivel se codifican incorrectamente casos base .