2015-08-14 27 views
0

Я чувствую, что совершил простую ошибку, которую не могу найти, когда когда-либо компилирую этот код, он берет меня в файл с именем «Makefile.win» и возвращает кучу ошибок компилятора в отношении параметров SDL_PixelFormatEnumToMasks().SDL_PixelFormatEnumToMasks() вызывает проблемы с компиляцией

код:

#include <SDL.h> 
int main(int argc, char *args[]) 
{ 
    Uint32 format = SDL_PIXELFORMAT_RGB888; 
    extern int bpp; 
    extern Uint32 Rmask, Gmask, Bmask, Amask; 
    SDL_PixelFormatEnumToMasks(format, &bpp, &Rmask, &Gmask, &Bmask, &Amask); 
} 

ошибки:.

main.cpp :(RDATA $ .refptr.bpp [.refptr.bpp] + 0x0): неопределенная ссылка на 'БПП'
main.cpp :(RDATA $ .refptr.Rmask [.refptr.Rmask] + 0x0).. неопределенными ссылка на 'Rmask'
main.cpp :(RDATA $ .refptr.Gmask [.refptr.Gmask ] + 0x0): undefined ссылка на 'Gmask' main.cpp :(RDATA $ .refptr.Bmask [.refptr.Bmask] + 0x0).. Неопределенными ссылка на 'Bmask'
main.cpp :(RDATA $ .refptr.Amask [.refptr.Amask ] + 0x0): не определена ссылки на 'Amask' [Error] л.д. вернулся 1 выход рецепта статуса для цели 'Project3.exe' не удался

+1

Не объявлять переменные как 'extern'? –

ответ

0

Вы объявили переменные, как extern. Для компилятора это означает, что эти переменные определены в другой области другого файла и пытаются найти их в любой библиотеке/файле, которую вы связали с вашим main.cpp.

Если вы просто хотите использовать свои переменные, например format, не объявляйте его extern.

Смежные вопросы