Topic: [TUTORIAL] How to Compile Teeworlds Under Unix/Linux
*Banner created and tutorial inspired by HeroiAmarelo
*If you are looking for a tutorial on how to do this in a Windows environment, please click the banner below:
*Official Teeworlds documentation on compiling Teeworlds here.
*This tutorial will work for Teeworlds v0.5.x, v0.6.x, and (for now) v0.7.x (pending release also)
1) Things you need before starting.
Using your update manager (apt-get, yum, etc...), you should install the following packages:
kernel, kernel-headers, kernel-devel
make
freetype, freetype-devel
python, python-devel
*NOTE: Python can also be installed from sourcealsa-lib-devel
SDL-devel
*NOTE: It is recommended to install from sourcexorg-x11-server-Xorg
gl
glibc-headers, glibc-common, glibc-devel, gcc, libgcc, gcc-c++, gnutls-c++, libstdc++, libsigc++, libstdc++-devel
Download and Compile Bam (used to compile teeworlds)
Extract the contents of bam and place it in the same directory as where you will have Teeworlds.(For advanced users, this step can be modified as you see fit)
Open a terminal in your bam directory and run the appropriate shell script (.sh file) by typing
bash make_unix.sh
*NOTE1: make_unix.sh is the recommended script for most Unix/Linux users
*NOTE2: if you get permission errors, please run the command as superuser/root
2) Download Teeworlds source
3) Compile Teeworlds
Open a terminal in the root of your teeworlds directory and run the command:
../bam-(version#)/bam release
for all stuff../bam-(version#)/bam server_release
for server only../bam-(version#)/bam debug
for debug version of all../bam-(version#)/bam server_debug
for debug version of server
*NOTE: If you are using bam-0.2.0, the bam binary will not be in the root of your bam directory, but rather in ~/bam/src/. Change command paths accordingly.
END OF TUTORIAL
If you have any questions, please feel free to contact me or your favourite forum moderator
If you find that this tutorial is missing anything or has something incorrect, please contact me and I will fix it.
My main concern for this tutorial is the package listings. If you find one is not needed or one is missing, please contact me and I will fix it.