grazie per la risposta. Provo a darti maggiori info. Ho una struttura dati grafo così fatta presente nella libreria libgraph

dichiarata in libgraph.h
typedef struct
{
unsigned int *vertices;
unsigned int **weight;
unsigned int num_vertices;
}graph;

La matrice incriminata è weight.
Creo ed alloco lo spazio necessario al grafo con la funzione dichiarata in libgraph

graph* init_graph(value num_vertices)
{
int i;
graph *g;
g = (graph *)malloc(sizeof(graph));
g->num_vertices = num_vertices;
g->vertices = (vertex *)malloc(g->num_vertices*sizeof(vertex));
g->weight = (value **)calloc(g->num_vertices,sizeof(value));
for(i=0;i<g->num_vertices;i++)

g->weight[i]=(value *) calloc(g->num_vertices,sizeof(value));

return g;
}

Nel mio codice dichiaro un puntatore al grafo
graph *g;

alloco lo spazio necessario chiamando la funzione di prima

g = init_graph(8)

ed inizializzo la matrie così

for(i = 0; i < 8/*g->num_vertices*/; i++)
for(l = 0; l < 8/*g->num_vertices*/; l++)
{
g->weight[i][l] = 0;
}

Il problema risiede proprio in quest ultimo pezzo di codice. Ad un certo punto, mentre il programma inizializza la matrice, si interrompe con un segment fault. Tra l'altro l'errore non capita nemmeno ai "bordi" della matrice il che farebbe pensare che si cerca di accedere ad uno spazio di memoria non allocato. Ripeto il codice su una macchina a 32bit funziona bene