Raspberry Pi 4 support (GLES 1.1)



Just wanted to raise a thread here following the release of the Raspberry Pi 4. I’ve successfully got Wolfenstein Enemy Territory working with GLES 1.1 and SDL2, but there are some significant changes required to get GLES working on this new board.

  1. The “libbrcmGLESv2” library should not be linked to anymore and instead we should use the Mesa libs. For GLES 1.1, there is a library installed by default called “GLESv1_CM”.
  2. The “libgles1-mesa-dev” package is no longer available in Debian Buster, so in order to use GLES 1.1 headers, you need to reference the ones installed in the Pi firmware directory, i.e “/opt/vc/include”.
  3. In the past, people have referenced a number of flags to pass to SDL2’s configure if you want to build for GLES - simply running “./configure” is enough on the Pi 4, this is because X11 is used as the window manager instead of dispmanx.

GLES 1.1 performs very well on the Pi 4. Unsure of what changes may be required to SDL2 to reflect this.



I just built the latest SDL snapshot under Raspberry Pi 4, with no problems. It looks like testgles is using the correct headers and libraries, and display works fine under the desktop. It doesn’t run on the console anymore though, is that expected?


Thanks - yes I noticed that if I just configure SDL without any additional flags then it seems to work fine in GLES. Previous advice has been to add a number of configure flags to disable OpenGL etc…

Regarding console mode, I’ve read that the KMSDRM driver inside SDL could potentially be used - I haven’t personally got it working yet with Enemy Territory but will continue trying. The Kodi team and RetroPie will certainly want SDL running in a console mode without a window manager.