First of all I want to thank about these fine openGL tutorials. Thanks! : ) I'm using 32 and 64 bit linux machines to compile ( Linux/GLX Code ). I faced with problem in loadBMP function on linux64. To be short the problem is in the following line ( starting from lesson06 ): [code] long int bfOffBits; [/code]and later in the function[code] if (!fread(&bfOffBits, sizeof(long int), 1, file)) [/code] it's better to replace it with [code] int bfOffBits; ... if (!fread(&bfOffBits, sizeof(bfOffBits), 1, file)) [/code] because: linux32: sizeof( long int ) == 4 linux64: sizeof( long int ) == 8 and BMP file format assumes the field size ( File offset to Pixel Array ) to be 4 bytes. Please correct me if I'm wrong. Best regards.