Quand un programme fait un SIGSEGV, le strace n'est souvent pas très utile.
Tu devrais plutot essayer de lancer le programme dans gdb, et faire un 'bt' ensuite pour voir l'état de la stack au moment du crash.
De mémoire il faut faire :
$ gdb programme bla bla bla
> run paramêtres bla bla bla Program received signal SIGSEGV, Segmentation fault.
> bt trace de la pile d'appel
Si la pile est incohérente, c'est généralement un dépassement de buffer.
Visiblement tu as le problème sur au moins deux programmes, cela peut venir éventuellement d'une librairie et non pas des applications elles-même. Avec strace, tu n'as aucune chance de le voir, avec gdb, nettement plus.
[^] # Re: Coucou !
Posté par Sébastien Koechlin . En réponse au journal Petit coup de gueule contre Mandrake. Évalué à 3.
Tu devrais plutot essayer de lancer le programme dans gdb, et faire un 'bt' ensuite pour voir l'état de la stack au moment du crash.
De mémoire il faut faire :
$ gdb programme
bla bla bla
> run paramêtres
bla bla bla
Program received signal SIGSEGV, Segmentation fault.
> bt
trace de la pile d'appel
Si la pile est incohérente, c'est généralement un dépassement de buffer.
Visiblement tu as le problème sur au moins deux programmes, cela peut venir éventuellement d'une librairie et non pas des applications elles-même. Avec strace, tu n'as aucune chance de le voir, avec gdb, nettement plus.