[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Segfaults.



2070718 <luismiguel.hernandez@campus.uab.es> writes:

> Hola.

Buenas...

> desde ke comenze con linux las segmentation faults me han perseguido (bueno 
> ahora son violaciones de segmento en castellano) no hay ningun metodo-howto 
> para solucionar este tipo de errores con Gdb o algo???

Cuando un programa te da un `segmentation fault', lo que está pasando
es que ha intentado acceder a una posición de memoria que no tenía
asignada.  Si al producirse este error te genera un `core', puedes
verlo con el `gdb' haciendo `gdb programa core' siendo `programa' el
programa que ha fallado.  Una vez que estás en el gdb, con `backtrace'
puedes ver el camino que ha recorrido el programa hasta llegar al
punto donde ha fallado.  El fallo más normal es que se intenta acceder
al contenido del lugar donde está apuntando un puntero, pero ese
puntero no está inicializado (es NULL).  Si sabes que ese puntero no
tendría que ser NULL en ese punto, puedes ir retrocediendo en las
llamadas a funciones que se han realizado con `up' (o avanzar con
`down') hasta encontrar el lugar donde falla.

Si el programa es tuyo, esta es la forma (o una de las formas) de
encontrar estos errores.  Si el programa no es tuyo, pues supongo que
tendrías que enviar un bug al autor.

Si te pasa con muchos programas, tal vez estés utilizando una versión
de la glibc que no corresponde con la que deberían utilizar esos
programas (como se ha comentado en otro mensaje por esta lista).

Hasta luego.

-- 
------------------------------------------------------------
David Muriel.
Debian GNU/Linux woody + Emacs 20.5.2 + Gnus v5.8.3
Linux registered user #25632 (http://counter.li.org/)
------------------------------------------------------------

..."El trabajo en equipo es esencial...te permite echarle la culpa a otro."...



Reply to: