【发布时间】:2013-10-30 18:58:53
【问题描述】:
我正在尝试使用 Qt Creator (Qt 5.1.1) 构建以下基本 SDL2 应用程序。
SDLTest.pro:
TARGET = SDLTest01
CONFIG += console
TEMPLATE = app
INCLUDEPATH += C:\Users\Martin\code\libs\SDL2-2.0.1\x86_64-w64-mingw32\include
LIBS += -LC:\Users\Martin\code\libs\SDL2-2.0.1\x86_64-w64-mingw32\lib -lSDL2
SOURCES += main.cpp
main.cpp:
#include <SDL2/SDL.h>
#include <QCoreApplication>
#undef main
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
if( SDL_Init( SDL_INIT_EVERYTHING ) == -1 )
return 1;
return a.exec();
}
但我有以下错误:
undefined reference to `SDL_Init'
具有相应参考的相同代码可以使用 SDL 1.2 编译。
有什么想法吗?
【问题讨论】:
-
SDL 真的可以与 QT 一起使用吗?难道他们都不想控制主事件循环吗?
-
您能说明您的 SDL2“lib”文件夹的内容吗?
-
@japreiss 可以将 SDL 与 Qt 一起使用,只要两者之一用于窗口/事件处理。
-
您没有正确链接到 SDL。我建议不要同时使用 Qt 和 SDL。任选其一。
-
@MartinDelille 如果您不链接到 SDL2,那就是您得到的错误。 SDL2-2.0.1 中有多个文件夹,您是否为编译器链接到正确的库? (可能是位数不匹配)