Что это такое?
Ругается на это:
unsigned int* pnmmatrix;
pnmbody.width = (CARD32) (image->width)*sizeof(short)*3;
pnmbody.height = (CARD32) (image->height);
pnmmatrix=(unsigned int*) calloc (pnmbody.width*pnmbody.height, sizeof(unsigned int));
Точнее на unsigned int* pnmmatrix;
Если убрать эту переменную, то естественно ничего не соберется:
error: ‘pnmmatrix’ undeclared (first use in this function)
И где логика?