当我尝试运行程序时,我收到以下错误消息:
SDL could not initialize! SDL_Error: No available video device
我安装了所有必要的SDL库,目前正在运行ubuntu 15.10
这是我的简单SDL代码:
#include <stdio.h>
#include "SDL2/SDL.h"
//Screen dimension constants
const int SCREEN_WIDTH = 640;
const int SCREEN_HEIGHT = 480;
int main(int argc, char* argv[])
{
//The window we'll be rendering to
SDL_Window* window = NULL;
//The surface contained by the window
SDL_Surface* screenSurface = NULL;
//Initialize SDL
if( SDL_Init( SDL_INIT_VIDEO ) < 0 )
{
printf("SDL could not initialize! SDL_Error: %sn", SDL_GetError());
}
else
{
//Create window
window = SDL_CreateWindow("SDL Tutorial",SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, SCREEN_WIDTH,
SCREEN_HEIGHT, SDL_WINDOW_SHOWN);
if (window == NULL) {
printf("Window could not be created! SDL_Error: %sn", SDL_GetError());
}
}
return 0;
}
SDL2库已正确链接到我的C项目。
当您的显示系统(X11、Mir、Wayland、RPI…)的SDL2中没有可用的视频驱动程序时,会出现此错误消息。您是否从Ubuntu存储库安装了SDL2软件包或从源代码编译?当从源代码编译时,您应该检查支持的视频驱动程序是否将在"配置"步骤结束时内置到二进制文件中。否则,您需要安装所需的开发头(用于X11和Mir)。