c - Segmentation fault inside SDL_CreateRenderer -


i'm trying make skeleton sdl2 application on xubuntu 14.04 (every packages date).

here init function source code:

int map_x = 50; int map_y = 20;  //the window we'll rendering sdl_window *gwindow = null;   //the window renderer sdl_renderer* grenderer = null;  void init() {     if (sdl_init(sdl_init_video) < 0)         eprintf("sdl not initialize: %s\n", sdl_geterror());      gwindow = sdl_createwindow( "sdl tutorial",\                                 sdl_windowpos_undefined,\                                 sdl_windowpos_undefined,\                                 map_x, map_y,\                                 sdl_window_shown);     if (gwindow == null)         eprintf( "window not created: %s\n", sdl_geterror());      grenderer = sdl_createrenderer( gwindow, -1,\                                 sdl_renderer_accelerated);      if (grenderer == null)         eprintf("renderer not created: %s\n", sdl_geterror());      //initialize renderer color     sdl_setrenderdrawcolor(grenderer, 0xff, 0xff, 0xff, 0xff); } 

but seg faults inside sdl_createrenderer function. here gdb output:

(gdb) run starting program: /home/ghi/desktop/tron/client  [thread debugging using libthread_db enabled] using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".  program received signal sigsegv, segmentation fault. 0x0000000000005885 in ?? () (gdb) #1  0x00007ffff67dce02 in xcloseim ()    /usr/lib/x86_64-linux-gnu/libx11.so.6 (gdb)  #2  0x00007ffff7b8d4fb in ?? () /usr/lib/x86_64-linux-gnu/libsdl2-2.0.so.0 (gdb)  #3  0x00007ffff7b81cce in ?? () /usr/lib/x86_64-linux-gnu/libsdl2-2.0.so.0 (gdb)  #4  0x00007ffff7aed785 in ?? () /usr/lib/x86_64-linux-gnu/libsdl2-2.0.so.0 (gdb)  #5  0x00007ffff7aed8c8 in ?? () /usr/lib/x86_64-linux-gnu/libsdl2-2.0.so.0 (gdb)  #6  0x0000000000400cc5 in close () @ client.c:56 56      sdl_quit(); (gdb)  #7  0x00007ffff464d723 in ?? () /lib/x86_64-linux-gnu/libdbus-1.so.3 (gdb)  #8  0x00007ffff4645a46 in ?? () /lib/x86_64-linux-gnu/libdbus-1.so.3 (gdb)  #9  0x00007ffff4644ea7 in ?? () /lib/x86_64-linux-gnu/libdbus-1.so.3 (gdb)  #10 0x00007ffff4630e72 in ?? () /lib/x86_64-linux-gnu/libdbus-1.so.3 (gdb)  #11 0x00007ffff7b8d534 in ?? () /usr/lib/x86_64-linux-gnu/libsdl2-2.0.so.0 (gdb)  #12 0x00007ffff7b81cce in ?? () /usr/lib/x86_64-linux-gnu/libsdl2-2.0.so.0 (gdb)  #13 0x00007ffff7aed785 in ?? () /usr/lib/x86_64-linux-gnu/libsdl2-2.0.so.0 (gdb)  #14 0x00007ffff7aed8c8 in ?? () /usr/lib/x86_64-linux-gnu/libsdl2-2.0.so.0 (gdb)  #15 0x0000000000400cc5 in close () @ client.c:56 56      sdl_quit(); (gdb)  #16 0x00007ffff217ab35 in ?? () /usr/lib/nvidia-331/libgl.so.1 (gdb)  #17 0x00007ffff0bbda41 in ?? ()    /usr/lib/nvidia-331/libnvidia-glcore.so.331.113 (gdb)  #18 0x00007ffff0ef1814 in ?? ()    /usr/lib/nvidia-331/libnvidia-glcore.so.331.113 (gdb)  #19 0x00007ffff0efd869 in ?? ()    /usr/lib/nvidia-331/libnvidia-glcore.so.331.113 (gdb)  #20 0x00007ffff0db2238 in ?? ()    /usr/lib/nvidia-331/libnvidia-glcore.so.331.113 (gdb)  #21 0x00007ffff0dbd8a7 in ?? ()    /usr/lib/nvidia-331/libnvidia-glcore.so.331.113 (gdb)  #22 0x00007ffff0ba34b3 in ?? ()    /usr/lib/nvidia-331/libnvidia-glcore.so.331.113 (gdb)  #23 0x00007ffff0b8665c in ?? ()    /usr/lib/nvidia-331/libnvidia-glcore.so.331.113 (gdb)  #24 0x00007ffff2122b30 in ?? () /usr/lib/nvidia-331/libgl.so.1 (gdb)  #25 0x00007ffff2122cdc in ?? () /usr/lib/nvidia-331/libgl.so.1 (gdb)  #26 0x00007ffff2153f59 in ?? () /usr/lib/nvidia-331/libgl.so.1 (gdb)  #27 0x00007ffff7b8c0ad in ?? () /usr/lib/x86_64-linux-gnu/libsdl2-2.0.so.0 (gdb)  #28 0x00007ffff7b80be6 in ?? () /usr/lib/x86_64-linux-gnu/libsdl2-2.0.so.0 (gdb)  #29 0x00007ffff7b80e95 in ?? () /usr/lib/x86_64-linux-gnu/libsdl2-2.0.so.0 (gdb)  #30 0x00007ffff7b2ea44 in ?? () /usr/lib/x86_64-linux-gnu/libsdl2-2.0.so.0 (gdb)  #31 0x00007ffff7b284c0 in ?? () /usr/lib/x86_64-linux-gnu/libsdl2-2.0.so.0 (gdb)  #32 0x0000000000400c38 in init () @ client.c:38 38      grenderer = sdl_createrenderer( gwindow, -1,\ (gdb)  #33 0x0000000000400cef in main (argc=1, argv=0x7fffffffdf48) @ client.c:61 61      init(); 

and makefile:

client : client.o     gcc client.o -wall -lm -o client `sdl2-config --cflags --libs`  client.o : client.c     gcc -ggdb3 -lm -wall -c client.c `sdl2-config --cflags --libs` 

i'm using libsdl2-dev official repositories. know wrong here?

entire source can found here: https://github.com/hafron/tron/blob/master/client.c

(posted comment, turned out answer; typos fixed)

i know nothing sdl using, stack dump shows close() function called inside nvidia library. suspect superseded other close identifier function. try making close strictly local prepending static keyword declaration: static void close() {...} or renaming function my_close() or whatever...


Popular posts from this blog

debugging - Reference - What does this error mean in PHP? -

python - Win32com not dispatching excel, saying 'Server execution failed' -