1 This page is about compiling the sources included in [stable](https://xonotic.org/download) and [beta](Autobuilds) releases, and is also applicable when [updating by rsync](https://xonotic.org/download#upgrading).
\r
2 For development purposes (git builds), please see [Repository_Access](Repository_Access).
\r
4 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.
\r
6 To this end the Makefile default settings enable all optimisations that can be used on your current CPU without causing bugs, and compile using all available CPU threads.
\r
8 The engine 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.
\r
10 Invoking `make` or `make help` in the Xonotic directory will print the supported targets and current config.
\r
12 **Most people will want `make update-stable client` or `make update-beta client`**
\r
14 ## System package dependencies
\r
16 Build (client): `build-essential automake libtool libgmp-dev libjpeg-dev libsdl2-dev`
\r
17 Build (server): `build-essential automake libtool libgmp-dev libjpeg-dev zlib1g-dev`
\r
18 Runtime (client): `curl rsync libpng16-16 libfreetype6 libvorbisfile3`
\r
19 Runtime (server): `curl rsync libpng16-16`
\r