Ich arbeite an einem Spiel und habe kürzlich den Übergang von SDL 1.2 zu SDL2 gemacht (irgendwie spät zur Party, aber heh). Trotz fehlender Kompilierungs- oder Verknüpfungsfehler stürzte das Programm beim Start ab, als es hieß: "Die Anwendung konnte nicht ordnungsgemäß gestartet werden". Zuerst dachte ich, es sei meine eigene Schuld, aber dann wurde ich misstrauisch und stellte einen schnellen SDL2-Test zusammen, der nach dem fehlerfreien Kompilieren tatsächlich beim Start abstürzte.Die Verwendung von SDL2 mit g ++/MinGW stürzt beim Start ab
Hier ist der Code, den ich für dieses Beispiel verwendet haben (man kann es einfach nicht machen):
#include <SDL.h>
int main(int argc, char *argv[])
{
return 0;
}
Und die Kompilation Linie ist 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
Für was es wert ist:
> 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.
Ich verwende MinGW-w64 unter Windows, wie Sie sehen können. Das Betriebssystem ist Windows 8.1.