我尝试在Ubuntu Linux上使用SDL 1.3库运行以下代码。 我收到以下错误:
错误:无法打开流 错误:无法打开流
SDL_Init和SDL_CreateWindow
#include <SDL/SDL.h>
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char** argv) {
if((SDL_Init(SDL_INIT_VIDEO) != 0))
{
printf("[!] can't initialize SDL %s\n", SDL_GetError());
exit(-1);
}
// if((SDL_VideoInit(NULL) != 0))
// {
// printf("[!] can't initialize video %s\n", SDL_GetError());
// exit(-1);
// }
SDL_Window* win;
if(!(win = SDL_CreateWindow("SDL 1.3", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 640, 480, SDL_WINDOW_SHOWN)))
{
printf("[!] can't create Window %s", SDL_GetError());
exit(-1);
}
SDL_DestroyWindow(win);
SDL_Quit();
return 0;
}
答案 0 :(得分:1)
我在Ubuntu盒子上编译代码没有问题:
gcc init.c -o init `pkg-config --cflags --libs sdl`
ldd 的输出显示与以下内容关联的应用程序:
libSDL-1.3.so.0 => /usr/local/lib/libSDL-1.3.so.0 (0x00a94000)
执行应用程序时,Initializing touch...
将打印到控制台。顺便说一句,我从源代码下载并编译了SDL。