The Simple DirectMedia Layer Version 3 (SDL3 for short) is a cross-platform library designed to make it easy to write multimedia software, such as games and emulators.
Development versions of BLFS may not build or run some packages properly if LFS or dependencies have been updated since the most recent stable versions of the books.
Download (HTTP): https://www.libsdl.org/release/SDL3-3.2.26.tar.gz
Download MD5 sum: 54acc3f1cb528c26259c32bb29173753
Download size: 16 MB
Estimated disk space required: 126 MB (add 117 MB for tests)
Estimated build time: 0.5 SBU (using parallelism=4; add 0.6 SBU for tests)
alsa-lib-1.2.14, libusb-1.0.29, libxkbcommon-1.13.0, Mesa-25.2.2, pipewire-1.4.9, PulseAudio-17.0, Vulkan-Loader-1.4.328.1, wayland-protocols-1.45, and Xorg Libraries (if those are not present, the corresponding modules are not built)
ibus-1.5.33, jack, and sndio
Install SDL3 by running the following commands:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D SDL_TEST_LIBRARY=OFF \
-D SDL_STATIC=OFF \
-D SDL_RPATH=OFF \
-W no-dev -G Ninja .. &&
ninja
Now, as the root user:
ninja install
If you want to build the tests, issue the following commands:
mkdir build-tests &&
cd build-tests &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D SDL_STATIC=OFF \
-D SDL_RPATH=OFF \
-D SDL_TESTS=ON \
-D SDL_INSTALL_TESTS=ON \
-W no-dev -G Ninja .. &&
ninja &&
DESTDIR=$PWD/TESTS ninja install
Now you will be able to run the tests in TESTS/usr/libexec/installed-tests/SDL3. You will
have to run the tests individually. Some of them may need to be
manually killed and audio will need to be working so that you can
hear from the default audio output.
-D SDL_TEST_LIBRARY=OFF:
This parameter disables building an unnecessary static library
meant for the tests. It gets built in the testing section.
-D SDL_STATIC=OFF: This
parameter disables building static libraries.
-D SDL_RPATH=OFF: This
parameter disables installing with rpath. It can cause security
issues otherwise.