// Mal:g++ -o test.cpp a.out -lSDL2 
 // Bien:g++ test.cpp -lSDL2 (a.fuera implícito)
 // Mejor:g++ test.cpp -g -pedantic -o test -lSDL2 
Sospecho que el problema principal podría haber sido simplemente colocar los argumentos de g++ en el orden incorrecto.
como dijo Tietbohl
SDL_QUIT es parte de la enumeración SDL_EventTypehttp://wiki.libsdl.org/SDL_EventType
debe usar SDL_Quit();http://wiki.libsdl.org/SDL_Quit
 El encabezado debe ser:<SDL2/SDL.h> 
 La función de salida:SDL_Quit(); 
 El comando:g++ teste.cpp -o filename -lSDL2