Я пытаюсь запустить программу на С ++, которая просто открывает синее окно.Я пробовал xMing и vcxsrv и экспортировал отображение в 0, но когда я запускаю свою программу, ничего не происходит.
Если я запускаю xeyes, глаза показывают и следуют моему курсору, как и ожидалось.
Мой вопросКто-нибудь знает, как получить программу с SDL, чтобы открыть окно с помощью WSL?Почему он работает с xeyes, но ничего не происходит с самосозданным кодом?
Код работает на обычной машине с Linux.
EDIT: вот код.Я понял, что программа закрывается напрямую, если я в конце ввожу cin, я вижу синее окно, но я не уверен, почему оно выключается напрямую?
#include "SDL.h"
#include <iostream>
#include <glm/glm.hpp>
#include <vector>
#include "SDLauxiliary.h"
using namespace std;
using glm::vec3;
const int SCREEN_WIDTH = 640;
const int SCREEN_HEIGHT = 480;
SDL_Surface* screen;
void Draw();
int main( int argc, char* argv[] )
{
screen = InitializeSDL( SCREEN_WIDTH, SCREEN_HEIGHT );
while( NoQuitMessageSDL() )
{
Draw();
}
SDL_SaveBMP( screen, "screenshot.bmp" );
int a = 0;
cin >> a;
return 0;
}
void Draw()
{
for( int y=0; y<SCREEN_HEIGHT; ++y )
{
for( int x=0; x<SCREEN_WIDTH; ++x )
{
vec3 color(0,0,1);
PutPixelSDL( screen, x, y, color );
}
}
if( SDL_MUSTLOCK(screen) )
SDL_UnlockSurface(screen);
SDL_UpdateRect( screen, 0, 0, 0, 0 );
}