Compiling the Zandronum server on a Raspberry Pi
It is possible to compile
zandronum-server on a Raspberry Pi. It is mostly the same as compiling on Linux, but we have to disable some things first.
You can not combine the Zandronum client on a Raspberry Pi, as:
- The software renderer requires assembly files, and assembly files are only available for the
x86_64CPU architectures, and not the Raspberry Pi's ARM architecture.
- The OpenGL renderer uses normal OpenGL, which is not supported by the Raspberry Pi. The Raspberry Pi only supports OpenGL ES.
You will need:
- A Raspberry Pi.
- Access to a terminal on your Raspberry Pi.
This guide was written for the Raspberry Pi Model 2B, but should work on all models.
$ sudo apt-get install build-essential zlib1g-dev libsdl1.2-dev libjpeg-dev \ nasm tar libbz2-dev libgtk2.0-dev cmake mercurial libfluidsynth-dev libgl1-mesa-dev \ libssl-dev
Arch Linux ARM
$ sudo pacman -S --needed gcc make zlib sdl libjpeg-turbo nasm tar bzip2 gtk2 cmake mercurial \ fluidsynth mesa glu openssl
cd to your working directory:
$ mkdir $HOME/zandronum-build && cd $HOME/zandronum-build
Clone the Zandronum repository:
$ hg clone https://bitbucket.org/Torr_Samaho/zandronum .
Get the latest stable release (for other versions replace
"max(tagged())" with one of the tags found in the repository):
$ hg update -cr "max(tagged())"
Apply patch that fixes compilation under Raspberry Pi:
$ wget -O raspi.patch "https://gist.githubusercontent.com/csnxs/0e4ce613a5d1736ead593500ca5a9df0/raw/330a41c796bdca88b5040bedf9e6a568ec567e7f/-" && \ hg import --no-commit raspi.patch && \ rm raspi.patch
cd to the directory where build files will be outputted:
$ mkdir buildserver && cd buildserver
cmake, this generates the
$ make clean; \ cmake -DCMAKE_BUILD_TYPE=Release -DSERVERONLY=ON -DNO_ASM=1 ..
-DNO_ASM=1 argument is important as it doesn't compile the architecture-dependent assembly code.
Now, run this command to build Zandronum.
$ make -j$(nproc)
This compile Zandronum using all of your Raspberry Pi's CPUs.
Assuming all went well, you should now have a
zandronum-server binary in your working directory.
To launch it:
You'll probably want to add the
-iwad parameter to get it to successfully launch, though.
Once you've set it all up, enjoy playing on your Pi-powered server!