This page is about compiling the sources included in [stable](https://xonotic.org/download) and [beta](https://beta.xonotic.org/autobuild) releases, and is also applicable when updating by rsync. For development purposes (git builds), please see [Repository_Access](Repository_Access). The release Makefile aims to provide a convenient way to compile for alternative CPU architectures, or to get a build fully optimised for a recent x86 CPU (the official binaries are generic x86_64). It would also allow you to run Xonotic on an OS too old to be supported by official binaries. To this end the Makefile defaults to enabling all optimisations that can be used on your current CPU without causing bugs, and to using all available CPU threads. The builds will be dynamically linked except for d0_blind_id which is statically linked to ensure reliable player ID support and because OS distributions don't ship this. Invoking `make` or `make help` will print the supported targets and current config. **TL;DR: Most people will want `make update-beta && make client`** ## System package dependencies ### Debian Build: `build-essential automake libgmp-dev libjpeg-dev libpng-dev libsdl2-dev` Runtime: `libfreetype6 curl rsync` *Note: Debian's `libjpeg-dev` metapackage pulls in `libjpeg62-turbo-dev`*