一、環境
Win7 64
qt-opensource-windows-x86-5.11.2.exe
SDL 2.0.9
二、下載
SDL2下載的是VC版本

三、新建qt項目
1、新建一個純C項目

2、把SDL文件放到項目中


3、修改qt項目設置
pro文件加入SDL路徑
INCLUDEPATH += ../SDL2/SDL2/include/ LIBS += -L../SDL2/SDL2/lib/x86 -lSDL2 LIBS += -L../SDL2/SDL2/lib/x86 -lSDL2main LIBS += -L../SDL2/SDL2/lib/x86 -lSDL2test
項目設置-RUN的環境變量中加入SDL2.DLL的路徑
如果這部漏了,就會出錯。SDL2 exited with code -1073741515

四、添加測試代碼
#include <stdio.h> #include "SDL.h" #undef main int main() { SDL_Window* gWindow = NULL; SDL_Surface* gScreenSurface = NULL; if(SDL_Init(SDL_INIT_VIDEO)<0) { printf( "Window could not be created! SDL_Error: %s\n", SDL_GetError() ); return 0; } gWindow=SDL_CreateWindow("SHOW BMP",SDL_WINDOWPOS_UNDEFINED,SDL_WINDOWPOS_UNDEFINED,215,134,SDL_WINDOW_SHOWN); if(gWindow==NULL) { printf( "Window could not be created! SDL_Error: %s\n", SDL_GetError() ); return 0; } gScreenSurface=SDL_GetWindowSurface(gWindow); SDL_FillRect(gScreenSurface, NULL, SDL_MapRGB(gScreenSurface->format, 0xFF, 0x00, 0x00)); SDL_UpdateWindowSurface(gWindow); SDL_Delay(2000); SDL_FreeSurface( gScreenSurface ); gScreenSurface = NULL; SDL_DestroyWindow(gWindow); gWindow = NULL ; SDL_Quit(); return 0; }
五、運行結果
顯示一個紅色的方框,2秒后自動關閉。