学习SDL有一段时间了,现在决定试试SDL2,主要是试试它的硬件加速。但问题是,我根本无法编译它,而相同的代码使用SDL1.2正确编译。
示例代码是:
#include "SDL/SDL.h"
int main( int argc, char *args[] )
{
SDL_Init(SDL_INIT_EVERYTHING);
SDL_Quit();
return 0;
}
使用原始链接器设置:-lmingw32 -lSDLmain -lSDL
一切都可以编译。
但是,一旦我更改#include "SDL/SDL.h"
并#include "SDL2/SDL.h"
更改链接器设置,
-lmingw32 -lSDL2main -lSDL2
我就会收到错误消息:
obj\Debug\main.o||In function `SDL_main':|
main.cpp|5|undefined reference to `SDL_Init'|
main.cpp|8|undefined reference to `SDL_Quit'|
libmingw32.a(main.o):main.c:(.text.startup+0xa7)||undefined reference to `WinMain@16'|
我在C:/SDL-1.2.15中安装了 SDL1.2 ,在C:/SDL2中安装了SDL2
在搜索目录中,我添加了 SDL1.2 和 SDL2 Include 和 Lib 文件夹。