Orange Pi + Debian Buster + Ratpoison - SDL2 application runs but only flashes the GUI momentarily and then shows a black screen.

I can provide relevant details as needed but all the libraries have been installed.

When I run it in xfce, it shows the GUI as expected.

But when I choose a ratpoison session (or run the server-version of debian and launch program using ratpoison) it runs without errors, but it only shows the script running and not the actual GUI. It flashes the GUI once and that’s that.

I’ve run this setup on other machines without issues, but it seems I’m missing something very basic here.

I have installed all the libsdl2 and libsdl2*-dev packages.

I also built and ran this example program and it runs flawlessly. GitHub - aminosbh/flying-plane-sdl-animation: This project is written in C and uses CMake as a build system. It shows how we can make a basic animation using SDL2 : Flying plane. Mirror of https://gitlab.com/aminosbh/flying-plane-sdl-animation

Help would be very welcome! Thanks!

Board is Orange Pi 3 LTS running Debian buster with Linux 5.10.75-sun50iw6.

Interesting find. If I run the application NOT in fullscreen mode, it works fine.

In the code, the flag being passed to the SDL_CreateWindow() is SDL_WINDOW_FULLSCREEN_DESKTOP.

As mentioned before, this works well on other arm/x86 platforms regardless of fullscreen mode.

I would appreciate anyone else’s inputs.

Tried this out on a sample program and it is behaving the same way. Passing a fullscreen flag to SDL_CreateWindow() ends up showing nothing.

The example works otherwise.

To anyone that comes looking for a solution with no hope… try a newer debian or a newer kernel.

That fixed it for me.