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).
2 For development purposes (git builds), please see [Repository_Access](Repository_Access).
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.
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.
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.
10 Invoking `make` or `make help` in the Xonotic directory will print the supported targets and current config.
12 **Most people will want `make update-stable client` or `make update-beta client`**
14 ## System package dependencies
16 Build (client): `build-essential automake libgmp-dev libjpeg-dev libsdl2-dev`
17 Build (server): `build-essential automake libgmp-dev libjpeg-dev zlib1g-dev`
18 Runtime (client): `libcurl rsync libpng libfreetype6 libvorbisfile`
19 Runtime (server): `libcurl rsync libpng`