SDL
From Wikipedia:
- SDL (Simple DirectMedia Layer) is a cross-platform software development library designed to provide a hardware abstraction layer for computer multimedia hardware components. Software developers can use it to write high-performance computer games and other multimedia applications that can run on many operating systems such as Android, iOS, Linux, macOS, and Windows. SDL manages video, audio, input devices, CD-ROM, threads, shared object loading, networking and timers. For 3D graphics, it can handle an OpenGL, Vulkan, Metal, or Direct3D11 (older Direct3D version 9 is also supported) context. A common misconception is that SDL is a game engine. However, the library is suited to building games directly, or is usable indirectly by engines built on top of it.
Installation
The sdl12-compat package provides a compatibility layer for programs made with SDL 1.2.
SDL can be provided further functionality with several official libraries. These include sdl2_image, sdl2_mixer, sdl2_ttf, etc. for SDL 2 and sdl_image, sdl_mixer, sdl_ttf, etc. for SDL 1.2.
There is also a Python wrapper: python-pysdl2AUR.
Documentation
The official SDL Wiki provides a variety of resources and documentation in order to utilize the library. The website also provides a couple of tutorials to follow, which guide you through the setup and how to use SDL alongside gcc or codeblocks.
Note: Of the tutorials listed in the SDL Wiki, some of them are outdated (such as one which has not been updated for more than a decade).