snprintf definition should go in config.h If Win32 is enabled and Joliet no, it fails. Joliet should be enabled. vsnprintf definition should go in config.h lseek64 is defined as _lseeki64 in Windows SDK. types.h should go to correct place for manually created unistd.h in VS Macros with arguments are defined differently in GCC than in VS.