我正在开发一款游戏,最近从SDL 1.2过渡到了SDL2(有点迟到了派对,但是嘿)。尽管没有任何编译或链接错误,程序在启动时崩溃,同时说明(翻译自法语)"应用程序未能正确启动"。起初我认为这是我自己的错,但后来我怀疑并组装了一个快速的SDL2测试,确实在发布后完美无瑕的编译崩溃。
以下是我在此示例中使用的代码(您无法使其更简单):
#include <SDL.h>
int main(int argc, char *argv[])
{
return 0;
}
编译行是g++ main.cpp -ISDL2-2.0.4\x86_64-w64-mingw32\include\SDL2 -LSDL2-2.0.4\x86_64-w64-mingw32\lib -lmingw32 -lSDL2main -lSDL2 -otest.exe -fpermissive -std=c++11 -Wno-write-strings -Wno-overflow
为了它的价值:
> g++ --version
g++ (x86_64-win32-seh, Built by MinGW-W64 project) 6.1.0
Copyright (C) 2016 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
我正在Windows上运行MinGW-w64,如您所见。操作系统是Windows 8.1。
答案 0 :(得分:0)
韦尔普。我实际上使用了错误的SDL2.dll。我现在感到愚蠢。