> Más que valgrind necesitás GDB y compilar tu programa con -O0 -ggdb
Cuando tengo un error de otro tipo si me tira el archivo y la linea, asi que
creo que corre con las opciones de que decis, que creo que son las que daban
mas comentarios en debug. No estoy seguro porque uso un Makefile.
Corriendo el gdb no pasa nada hasta que llega a la última linea del main y
ahi (y recien ahi) me tira el segmentation fault.
Estas usando un valor que no inicializaste. O sea, algo asi:
>
int i;
>
> > printf("%d\n", i);
>
>
El unico caso de ese tipo que creo tener es este:
char* linea;
fscanf(archivo,"%s\n",linea);
Que si agrego un linea=NULL despues no anda.
Estas haciendo un jump a NULL (que es el 0x0), como te dice ahi. Para
> > saber bien que estas haciendo deberias compilar tu aplicación con
> > simbolos de debugging y volver a correr el valgrind. Ahi, te va a decir
> > el archivo y número de línea donde estas haciendo esto.
> >
> > Me explico?
>
>
Como dije mas arriba, me parece que estan esas opciones porque tenía otros
errores que si me mostraban mas info.
> Hiciste un jump a NULL, y esto es una consecuencia de eso: como "no
> > tenes permisos" para saltar a NULL, el kernel termino tu proceso con la
> > señal de segmentation fault.
>
>
Si, puede ser, pero no se donde ni como hice el salto XD
No tiene nada que ver en este caso. Usar shared objects implica usar
> > bibliotecas dinamicas cargadas en runtime con dlopen() o algo
> > equivalente, y ademas en este caso los ??? no son por esto sino por tu
> > salto a NULL.
>
>
Gracias por la aclaración.
Espero que te sirva!
>
>
Todo suma.
Gracias por su tiempo.
_______________________________________________
Lista de correo Programacion.
[email protected]
http://listas.fi.uba.ar/mailman/listinfo/programacion