та значи ubuntu 6.06 инсталацията ми е съвсем прясна, библиотеките SDL, SDL_image, SDL_ttf, SDL_net прочее - също. Реших да тествам инсталацията и останах изумен, Какво пропускам?
sdl-test.c
Примерен код |
#include <SDL/SDL.h> #include <stdio.h> #include <stdlib.h>
SDL_Surface* screen = NULL; SDL_Event* event = NULL; int done = 0;
int main(int argc, char** argv) { /* initialize sdl and set a video mode */ if (SDL_Init(SDL_INIT_VIDEO) == -1) { fprintf(stderr, "\n* Error: SDL_Init(%d): %s *\n\n", SDL_INIT_VIDEO, SDL_GetError()); exit(1); } atexit(SDL_Quit); screen = SDL_SetVideoMode(800, 600, 32, SDL_HWSURFACE); if (screen == NULL) { fprintf(stderr, "\n* Error: SDL_SetVideoMode: %s *\n\n", SDL_GetError()); exit(1); } SDL_WM_SetCaption("sdl-test", NULL); /* enter event loop */ while (!done) { while (SDL_PollEvent(event)) { switch (event->type) { case SDL_QUIT: done = 1; break; } } } return 0; } |
и вижте какво става след това:
Примерен код |
dilyan@ruseff:~/devel$ gcc -o sdl-test sdl-test.c -lSDL -lSDLmain dilyan@ruseff:~/devel$ ./sdl-test Fatal signal: Segmentation Fault (SDL Parachute Deployed)
|
според вас на какво се дъжи това?
РЕДАКЦИЯ:
Разреших проблема като направих SDL_Event структурата да е нормална променлива, а не указател. Понякога се притеснявам какви глупости ги пиша '>