2
define(SECT,install_linux)
3
include(navbar.html.m4)
5
TITLE(LINUX Installation)
7
SECTION(General comments)
9
All systemwide installation has to be carried out as root.
10
Installation from a source archive is recommended,
11
as PROGTITLE will be tailored for your system and missing libraries will be identified and
13
Only as a last resort, you should choose the binary archives.
14
The binary RPMs and Debian packages are a reasonable choice
15
if your system supports them and you can get hold of
16
the corresponding library packages in the right versions.
19
It is very important that Armagetron and all of its dependencies are built with the same
20
compiler. The different versions of gcc tend to be slightly binary incompatible with each other,
21
and on complex projects like this one these small glitches tend to cause unexplainable problems.
22
The distributed binaries are compiled with gcc 3.3, and we test source compatibility with 3.4
23
and 4.0 regularly. Yes, theoretically the binary interface for C code (ABI)
24
did not change, but be prepared for problems nevertheless.
27
SECTION(Required libraries,libs)
30
ITEM(ELINK(http://www.xmlsoft.org/,LibXML2) version 2.6.0 (some binaries: 2.6.12) or later for map file parsing)
31
ITEM([OpenGL or ELINK(mesa3d.sourceforge.net/,Mesa) for rendering])
32
ITEM(ELINK(www.libsdl.org,SDL) version 1.2.x (Simple Direct Media Layer) for input and sound output)
33
ITEM(ELINK(www.libsdl.org/projects/SDL_image/index.html, SDL_image)
34
version 1.2.x for the textures
35
which itself needs the libs)
36
ITEM(ELINK(www.libpng.org/pub/png/pngcode.html,pnglib and zlib)
37
(they should be included in your distribution))
38
ITEM(Optional: ELINK(www.libsdl.org/projects/SDL_mixer/,SDL_mixer))
39
ITEM([Binary versions only: libstdc++ 5.0.7 (any 5.x.y or whatever came with
40
your System if it uses GCC 3.2 or higher should do). Use
41
ELINK([rpmfind.net/linux/rpm2html/search.php?query=libstdc%2B%2B&submit=Search+...&system=&arch=],rpmfind)
43
ELINK([www.google.com/search?hl=en&lr=&q=libstdc%2B%2B+5.0.7&btnG=Search],google)
44
to find a RPM with that library for your system. Sorry, Debian users: I don't know what you need to do; use the
45
source packages instead.])
49
You may take a look at the ELINK(WEBBASE/compatibility.html,compatibility table)
50
if you want to check how likely it is for Armagetron to work on your PC.
55
SUBSECTION(Source archive,source)
57
Unpack the archive and change into the unpacked directory; type
60
Everything will be copied to FILE(PREFIX/games/armagetron).
61
Should there already be a version, it will be overwritten (see the section on
62
LINK([install_linux.html#multiple],[multiple versions]) if you want to keep your old
64
If FILE(gmake) is not found on your system, try
65
FILE(make); however, only GNU make is supported.
66
To build the dedicated server, add the option OPTION(--disable-glout) to the configure script.
67
To change the installation path, use the option OPTION(--prefix=new_path).
68
Type CMDLINE([uninstall-PROGNAME-VERSION]) to uninstall.
72
Please ELINK(armagetron.sf.net/contact.html,report it) if this procedure gives you errors you cannot
73
resolve; the goal is to make it work on as many systems as possible.
76
SUBSECTION(Binary RPM,rpm)
78
Type CMDLINE(rpm -i filename.rpm) The RPM build is quite untested, so it may be
79
that it has registered too many dependencies and you are not allowed to install it;
80
you may use the additional switch OPTION(--nodeps) to ignore these errors. However, you
81
may then end up with a broken installation.<br>
82
The documentation can then found in FILE(/usr/share/doc/PROGNAME).
83
To uninstall, use CMDLINE(rpm -e PROGNAME)
93
SUBSECTION(Source RPM)
95
Type CMDLINE(rpm --rebuild filename.src.rpm)
96
This should build binary RPMs suitable for your system in FILE(/usr/src/redhat/RPMS/i386) (RedHat)
97
resp. FILE(/usr/src/packages/RPMS/i386) (SuSE); you may have to look into the other subdirectories
98
of FILE(RPMS) to find them. Proceed as described in the LINK([install_linux.html#rpm],[previous paragraph]).<br>
99
Alternatively, type CMDLINE(rpm -i filename.src.rpm)
100
This should extract a source package in FILE(/usr/src/.../SOURCES) you can handle like
101
described LINK([install_linux.html#source],[in the first section]). You can
102
surely ignore all failed dependencies with OPTION(--nodeps) since the
103
dependencies were all there when you built the package. (It is possible,
104
if not likely, that the automatic dependency generation of RPM produces
108
SUBSECTION(Non-Root install)
110
You have the option to install the game as a regular user in your home directory. To do so, use
111
the OPTION(--prefix) directive of OPTION(rpm) or the OPTION(configure) script to point to a
112
place in your home directory, i.e.
113
CMDLINE(./configure --prefix /home/username/usr)
114
You can then start the game with
115
CMDLINE(/home/username/usr/bin/PROGNAME)
116
or, if you add OPTION(/home/username/usr/bin) to your executable search path, like normal.
119
SUBSECTION(Multiple versions,multiple)
120
If you give the additional option OPTION(--enable-multiver) to OPTION(configure), all installation
121
directories and executables will get the suffix OPTION(VERSION). Symbolic links will be created to
122
your convenience. This allows to install multiple versions in parallel, where OPTION(PROGNAME) will
123
always start the last installed version. dnl The RPMs are automatically built that way.
125
dnl SUBSECTION(netbsd)
126
dnl cd /usr/pkgsrc/games/armagetron
130
SUBSECTION(Binary archive)
132
Unpack the archive and change into the unpacked directory; type CMDLINE(./install)Everything will
133
be copied to FILE(PREFIX/games/armagetron). Type CMDLINE(PROGNAME --uninstall) to uninstall.
137
SECTION(Dedicated Server)
139
To install the dedicated server from binaries,
140
follow all the procedures above with the corresponding
141
download files; the server will be installed in
142
FILE(usr/local/games/PROGNAMEBASE-dedicated) and can be invoked by
143
CMDLINE(PROGNAMEBASE[-]dedicated)
144
Use the OPTION(--disable-glout) option of OPTION(configure) to build a dedicated server
145
when you are installing from source.
149
An init.d style start/stop script called FILE(PROGNAMEBASE) will be installed into FILE(/etc/init.d),
150
so you can use your standard system utilities to let it be started at boot time. By default, it runs
151
the server under the userid PROGNAMEBASE-dedicated (which gets created at installation) and logs
152
activity in FILE(/var/games/PROGNAMEBASE-dedicated). You can change these settings in the
153
configuration file FILE(CONFIGPATH/rc.config).
154
Unfortunately, the only way to give
155
commands to the server when it is run this way is to put them into FILE(everytime.cfg) which is
156
read every round or through the ingame admin.
161
define(DOCSTYLE_RESULT,unix)
162
include(install_result.html.m4)
168
Type CMDLINE(PROGNAME)
169
as a normal user to play.
173
include(navbar.html.m4)