jp, Ok, I added the printf's. If the hang occurs it's after ... > int Fweelin::setup() > { > char tmp[255]; > > printf("MAIN: Start 1\n"); > > // Keep all memory inline > mlockall(MCL_CURRENT | MCL_FUTURE); > > printf("MAIN: Start 2\n"); > > if (!XInitThreads()) { > printf("MAIN: ERROR: FreeWheeling requires threaded Xlib > support\n"); return 0; > } > > printf("MAIN: Start 3\n"); this. > > /* Initialize SDL- this happens here because it is common to video, > keys & config */ > // SDL_INIT_NOPARACHUTE > if ( SDL_Init(SDL_INIT_VIDEO | SDL_INIT_EVENTTHREAD) < 0) { > printf("MAIN: ERROR: Can't initialize SDL: %s\n",SDL_GetError()); This one doesn't get printed though. I have SDL-1.2.5-228 and SDL_gfx-2.0.9-1. I tried SDL-1.2.7-41.1 called fweelin 10 or so times -- no hangs. Hm ... Wolfgang