User:Javispedro/SDL-GLES

You can use SDL 1.2 and a small addon I made, SDL-GLES, to ease development of OpenGL ES (1.1 and 2.0) applications in Maemo.

Page in progress

Contents

Get started

OpenGL ES 2.0

  1. In any of the SDK targets, download and install SDL and SDL-GLES packages.
    fakeroot apt-get install libsdl-gles1.2-dev libsdl1.2-dev
  2. If you are in the FREMANTLE_ARMEL target, install libgles2-sgx-img-dev (which contains the OpenGL ES 2.0 required libraries and headers)
    fakeroot apt-get install libgles2-sgx-img-dev
  3. But if you are in the FREMANTLE_X86 target, install libgles2-dev instead (which contains the OpenGL ES 2.0 emulation libraries).
    fakeroot apt-get install libgles2-dev
  4. Now to get a simple skeleton for your app. Download gles2.c and put it in your working directory.
    wget "http://git.maemo.org/git?p=sdlhildon;a=blob_plain;f=sdlgles/test/gles2.c;h=d13ee1ef5505af8ee51a68250f3016ea4ce5f5d3" -O gles2.c
    Note that this is not a proper skeleton, work in progress
  5. Build gles2 with
    gcc `sdl-config --cflags --libs` -o gles2 gles2.c -lSDL_gles -lEGL -lGLESv2
  6. Now run it. Ensure the SDK interface is up (this is out of the scope for this little tutorial).
    ./gles2

OpenGL ES 1.1

  1. In any of the SDK targets, download and install SDL and SDL-GLES packages.
    fakeroot apt-get install libsdl-gles1.2-dev libsdl1.2-dev
  2. If you are in the FREMANTLE_ARMEL target, install libgles1-sgx-img-dev (which contains the OpenGL ES 1.1 required libraries and headers)
    fakeroot apt-get install libgles1-sgx-img-dev
  3. But if you are in the FREMANTLE_X86 target, currently there's not an easy way to install the emulation 1.1 libraries and headers. You will need to get the N900 OpenGL ES 1.1 PowerVR Insider SDK from Imagination, and install it. Note that you will need to unpack the library files on the usual paths manually.
  4. Now to get a simple skeleton for your app. Download gles1.c and put it in your working directory.
    wget "http://git.maemo.org/git?p=sdlhildon;a=blob_plain;f=sdlgles/test/gles1.c;h=0756be5b8979868a4a9ac4c3d8497e56b18bb276" -O gles1.c
    Note that this is not a proper skeleton, work in progress
  5. Build gles1 with
    gcc `sdl-config --cflags --libs` -o gles1 gles1.c -lSDL_gles -lEGL -lGLES_CM
  6. Now run it. Ensure the SDK interface is up (this is out of the scope for this little tutorial).
    ./gles1

In detail

Questions & Answers

Feel free to edit here.