Introduction to SDL

The Simple DirectMedia Layer (SDL for short) is a cross-platform library designed to make it easy to write multimedia software, such as games and emulators.

This package is known to build and work properly using an LFS-8.3 platform.

Package Information

SDL Dependencies


AAlib-1.4rc5, ALSA-1.1.6, GLU-9.0.0, NASM-2.13.03, PulseAudio-12.2, Pth-2.0.7, X Window System, DirectFB, GGI, libcaca, PicoGUI, and SVGAlib

User Notes:

Installation of SDL

Install SDL by running the following commands:

sed -e '/_XData32/s:register long:register _Xconst long:' \
    -i src/video/x11/SDL_x11sym.h &&

./configure --prefix=/usr --disable-static &&


Now, as the root user:

make install &&

install -v -m755 -d /usr/share/doc/SDL-1.2.15/html &&
install -v -m644    docs/html/*.html \

Testing SDL

If you wish to, test the installation of SDL using the included test programs. It is not required to install any of the resulting binaries to validate the installation. Issue the following commands to build the test programs:

cd test &&
./configure &&

You'll need to manually run all the test programs (they are listed in the README file in this directory). Many of them will need to be manually killed, and you'll need to turn your speakers on with the volume at a suitable level.

Command Explanations

sed -e ...: This command fixes compilation with libX11-1.6.0 and later.

--disable-static: This switch prevents installation of static versions of the libraries.

--disable-alsa-shared: This switch disables dynamically loading ALSA shared libraries.

--disable-sdl-dlopen: This switch disables using dlopen for shared object loading. Loading image backend libraries like libpng dynamically on the fly does not work.

--disable-x11-shared: This switch disables dynamically loading X11 shared libraries.

Configuring SDL

Configuration Information

As with most libraries, there is no configuration to do, save that the library directory, i.e., /opt/lib or /usr/local/lib should appear in /etc/ so that ldd can find the shared libraries. After checking that this is the case, /sbin/ldconfig should be run while logged in as root.


Installed Program: sdl-config
Installed Libraries: and libSDLmain.a
Installed Directories: /usr/include/SDL and /usr/share/doc/SDL-1.2.15

Short Descriptions


determines the compile and linker flags that should be used to compile and link programs that use libSDL.

library provides low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL, and 2D frame buffer across multiple platforms.

Last updated on 2018-08-19 20:08:15 -0700