下载SDL库参考这里。
1、创建一个非qt的C项目。
2、打开项目配置文件.pro,右击编辑区域打开“添加库”,选择外部库。
3、库类型选择Windows,我们使用32位的库,库文件选择SDL2-devel-2.0.12-mingw\SDL2-2.0.12\i686-w64-mingw32\lib,include路径选择SDL2-devel-2.0.12-mingw\SDL2-2.0.12\i686-w64-mingw32\include\SDL2。
4、完成上一步后项目文件.pro如下:
TEMPLATE = app
CONFIG += console
CONFIG -= app_bundle
CONFIG -= qt
SOURCES += \
main.c
win32: LIBS += -L$$PWD/../../../codeblocks_projects/SDL2-devel-2.0.12-mingw/SDL2-2.0.12/i686-w64-mingw32/lib/ -lmingw32 -lSDL2main -lSDL2
INCLUDEPATH += $$PWD/../../../codeblocks_projects/SDL2-devel-2.0.12-mingw/SDL2-2.0.12/i686-w64-mingw32/include/SDL2
DEPENDPATH += $$PWD/../../../codeblocks_projects/SDL2-devel-2.0.12-mingw/SDL2-2.0.12/i686-w64-mingw32/include/SDL2
注意:要指定在上述的lib的路径中寻找的动态库文件(上面文件已经添加好了)
-lmingw32 -lSDL2main -lSDL2
复制SDL2.dll到执行文件同级目录中:
5、添加测试代码编译运行。
#include <stdio.h>
#include <SDL.h>
int main( int argc, char* args[] )
{
SDL_Window *gWin = NULL;
SDL_Renderer *gRenderer = NULL;
if(SDL_Init(SDL_INIT_VIDEO) != 0){
printf("SDL init failed: %s\n", SDL_GetError());
return -1;
}else{
if(SDL_CreateWindowAndRenderer(640, 480, SDL_WINDOW_RESIZABLE, &gWin, &gRenderer) != 0){
printf("Create window and renderer failed: %s\n", SDL_GetError());
return -1;
}else{
SDL_SetRenderDrawColor(gRenderer, 0xff, 0xff, 0xff, 0xff);
SDL_RenderClear(gRenderer);
SDL_RenderPresent(gRenderer);
SDL_Delay(5000);
}
}
return 0;
}