Включение SDL.h приводит к тому, что программа завершается сразу после сборки и не запускается, но не выдает ошибку
Эта тестовая программа должна создать пустое окно, которое остается открытым до тех пор, пока вы не удалите его. Я скопировал его из документации SDL, чтобы убедиться, что это правильно. Это можно найти здесь.
// Example program:
// Using SDL2 to create an application window
#include "SDL.h"
#include <stdio.h>
int main(int argc, char* argv[]) {
SDL_Window *window; // Declare a pointer
SDL_Init(SDL_INIT_VIDEO); // Initialize SDL2
// Create an application window with the following settings:
window = SDL_CreateWindow(
"An SDL2 window", // window title
SDL_WINDOWPOS_UNDEFINED, // initial x position
SDL_WINDOWPOS_UNDEFINED, // initial y position
640, // width, in pixels
480, // height, in pixels
SDL_WINDOW_OPENGL // flags - see below
);
// Check that the window was successfully created
if (window == NULL) {
// In the case that the window could not be made...
printf("Could not create window: %s\n", SDL_GetError());
return 1;
}
//game loop, quitGame to quit
bool quitGame = false;
//var for checking events
SDL_Event event;
while(!quitGame) {
//Update particles
//Draw particles
//Check for events
while(SDL_PollEvent(&event)) {
if(event.type == SDL_QUIT)
quitGame = true;
}
}
// Close and destroy the window
SDL_DestroyWindow(window);
// Clean up
SDL_Quit();
return 0;
}
Это не создает окно и немедленно завершается, но не дает ошибок.
Я использую Eclipse, mingw32 и последнюю стабильную версию SDL2. Библиотеки и заголовки SDL2 находятся в файле на моем диске C. Я использую 64-битную систему. Я включаю всю папку заголовочных файлов SDL2. Единственная папка библиотеки, которую я связал, находится в 64-битной части папки SDL2. Библиотеки, которые я связал, - это библиотеки, предложенные HolyBlackCat, (в этом порядке) mingw32
, SDL2main
, а также SDL2
, Любая помощь с благодарностью. Спасибо!