Linux Distribution Field Report

From Armagetron

This page is intended to describe installation experiences with various Linux distributions. It covers installing the dependencies and installing the game itself. The distributions are always mentioned in the version that was actually used for testing; the procedure for later versions or derivate distributions is likely to be similar enough. The instructions assume you start from a default installation; if you deleted packages, you may also have deleted dependencies the instructions assume are already installed. You're on your own then.

Unless stated otherwise, all commands have to be executed as the superuser root on the command line. You'll need to know how to open a root terminal/console.

Peculiarities of Distributions

Ubuntu

Ubuntu does not install a root account like other distributions; instead, you are supposed to use the "sudo" command to gain temporary root rights. So, whatever the instructions below say you should do at the console, prepend a "sudo " and give it YOUR password whenever it is asked for. Also, the password you need to give to the Autopackage installation, should you forget the sudo, is YOUR password.

Dependencies

Before you think about installing Armagetron Advanced, you have to prepare your system for it. Don't worry, not much is missing from most distributions.

The complete list of requirements of current stable versions is libstdc++5, libSDL, libSDL_Image, libpng, libxml2 (version 2.6.12 or above) and of course OpenGL and GLU. Depending on what you want to install, you can scratch some of that: If you install from source, you don't need libstdc++5, the libstdc++ that comes with GCC will be used, but you will need development versions of all dependencies and the build tools GCC and GNU Make. If you install a server, you only need libstdc++5 and libxml2. If you install from a .package, libxml2 is included and you don't need it installed.

All modern distributions already come with libSDL, libxml2, OpenGL and GLU installed, so usually, you don't need to worry about those.

The trickiest part is libstdc++5; we're compiling the binary distributions against it for compatibility with older installations, but modern distributions have moved on and provide the version we need only in legacy packages.

Debian 3.1 "Sarge" and Ubuntu 5.10 "Breezy Badger"

Do

apt-get update
apt-get install libstdc++5 libsdl-image1.2

Fedora Core 4

To get SDL_Image, do

yum update
yum install SDL_image

libstdc++ is tricker, the author did not find a good way. Improvements wanted :)

libstdc++ is available as a RPM on the FC4 dvd, in the path Fedora/RPMS. If you only have CDs, good luck finding the right one. To install it, mount the DVD/right CD and do

rpm -i <path-to-dvd>/Fedora/PRMS/compat-libstdc++-33-3.2.3-47.fc4.i386.rpm

The detailed filename is likely to vary on FC5+ or derivate distributions, but the important part is the libstdc++-33 here, because it's the compatibility library for GCC 3.3 compilates.

SuSE 9.1 Personal

To install SDL_Image, you need to start yast2, go to the "Software" menu and the "Install and Remove Software" submenu. Hit "Search" and seach for SDL. Select SDL_image from the list and let it be installed.

SuSE 9.1 comes with a version of libxml2 that is too old for our purposes; installing from RPM will not work. The .package comes with the parts of libxml2 we need, so you can use that. Later versions should not have this problem, and you can use the same method as above, only seaching for "libxml" and picking "libxml2", to install libxml2.

Installing Armagetron Advanced

TODO