SDL2 根本没有收到任何事件
SDL2 not recieving any events at all
在一个SDL2项目中,SDL_PollEvents( SDL_Event* e )
不发送任何事件,总是returns0
,所以我无法处理任何事件。我的事件处理循环看起来不错:
SDL_Event e;
while( SDL_PollEvent( &e ) > 0 )
{
//this is never reached !
printf( "recieved event %d\n", e.type );
switch(e.type)
{
case SDL_QUIT:
quit = true;
}
}
另一方面,它编译得很好,可以绘图,而且我确定它不会陷入无限循环(我让它在每一帧都打印出一条消息)。
我 link 反对 SDL2
和所有其他依赖项,我什至 gcc/g++
调用 sdl-config --cflags
。如何解决这个问题?
你不应该打电话给 sdl-config --cflags
。这是针对 SDL
(库的第一个版本),而不是 SDL2
。它以某种方式发生冲突并阻止所有事件到达 SDL_PollEvents()
。删除它,它应该可以工作!
在一个SDL2项目中,SDL_PollEvents( SDL_Event* e )
不发送任何事件,总是returns0
,所以我无法处理任何事件。我的事件处理循环看起来不错:
SDL_Event e;
while( SDL_PollEvent( &e ) > 0 )
{
//this is never reached !
printf( "recieved event %d\n", e.type );
switch(e.type)
{
case SDL_QUIT:
quit = true;
}
}
另一方面,它编译得很好,可以绘图,而且我确定它不会陷入无限循环(我让它在每一帧都打印出一条消息)。
我 link 反对 SDL2
和所有其他依赖项,我什至 gcc/g++
调用 sdl-config --cflags
。如何解决这个问题?
你不应该打电话给 sdl-config --cflags
。这是针对 SDL
(库的第一个版本),而不是 SDL2
。它以某种方式发生冲突并阻止所有事件到达 SDL_PollEvents()
。删除它,它应该可以工作!