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 11.3 platform.
Download (HTTP): https://www.libsdl.org/release/SDL-1.2.15.tar.gz
Download MD5 sum: 9d96df8417572a2afb781a7c4c811a85
Download size: 3.8 MB
Estimated disk space required: 40 MB
Estimated build time: 0.6 SBU
Xorg Libraries (if they are not present, the corresponding modules are not built)
AAlib-1.4rc5, ALSA-1.2.7, GLU-9.0.2, NASM-2.16.01, PulseAudio-16.1, Pth-2.0.7, a graphical environment, DirectFB, GGI, libcaca, PicoGUI, and SVGAlib
User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/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 && make
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 \ /usr/share/doc/SDL-1.2.15/html
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 && make
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.
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.
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/ld.so.conf
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
.