Activate firefly on restart
[supertux.git] / INSTALL
diff --git a/INSTALL b/INSTALL
index 81b2602..888904b 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -3,98 +3,127 @@ http://supertux.berlios.de/
 
 Last update: October 11, 2005 by Ondra Hosek
 
+BINARIES
+--------
+    
+  We try to provide precompiled binaries of supertux for a number of platforms.
+  You should check
+
+    http://supertux.berlios.de/wiki/index.php/Download/Installation
+    
+  for the packages and instructions on how to install them. If there are no
+  prebuilt binaries for your platform, then you might still be able to compile
+  the sourcecode yourself. In this case read the next sections.
+
 REQUIREMENTS
 ------------
 
-  SDL
-  ---
-    The Simple DirectMedia Layer, a set of libraries made to simplify
-    access to multimedia functions of various platforms, is required
-    to compile this game.
-
-    You can download the SDL libraries from:
-      http://www.libsdl.org/
-
-  SDL_image
-  ---------
-    SDL_image, an image-loading library based on SDL, is also required.
-
-    You can download SDL_image from:
-      http://www.libsdl.org/projects/SDL_image/
-
-  OpenGL
-  ------
-    OpenGL is a graphics library that your system should already
-    have (it is preinstalled on Windows and should be available
-    in your X11 distribution on Unix systems).
-
-    To have the best performance possible, you should have an
-    accelerated graphics card and use its vendor's drivers. Currently,
-    only NVidia writes decent drivers for Linux, but since only
-    accelerated 2D is used, the performance on ATI or other graphics
-    cards shouldn't be significantly worse.
-
-    You will need the OpenGL headers to compile SuperTux, so it is
-    advisable to first install Mesa (which should be included with your
-    X11 distribution) on Unix to get the headers and only then replace
-    the software rendering OpenGL library by installing the driver for
-    your graphics card.
+  To build supertux from source, you need to have a number of tools and
+  libraries installed. Note that most of these things should already be
+  available prepackaged and optimized for your distribution, it is recommended
+  that you check your distribution first before downloading from the websites.
+
+* Linux development tools (your distribution should come with these):
+    - gcc compiler version 3.2 or newer (you need the c++ compiler g++)
+        http://gcc.gnu.org
+    - gnu binutils
+        http://www.gnu.org/software/binutils
+    - a shell and posix commandline tools
+
+* perforce jam 2.5 or later
+    Download: ftp://ftp.perforce.com/pub/jam
+    Homepage: http://www.perforce.com/jam/jam.html
+
+* OpenGL headers and libraries
+    opengl libraries and headers are specific to your graphics card. Make sure
+    that you have hardware accelerated opengl drivers installed. Software
+    renderers like Mesa will make supertux unplayable slow.
+
+* SDL 1.2.5 or later (1.2.8 is recommended on MacOS/X)
+    http://www.libsdl.org
+
+* SDL_image (any version)
+    http://www.libsdl.org/projects/SDL_image
+
+* PhysicsFS (1.0.0, the development branch 1.1.x is buggy and does not work,
+             1.2.0 and later should work when it is released)
+    http://www.icculus.org/physfs
+
+* OpenAL
+    There are no official linux releases of OpenAL yet, you should grab the
+    latest cvs snapshot (any snapshot from 2005 should work, earlier snapshots
+    tend to have bugs). OpenAL 1.0 or later implementations on other systems
+    like MacOS/X or windows should work.
+    
+    http://www.openal.org
+
+  Note: We tried to write our code clean, portable and platform neutral, so it
+  should be possible to compile it on a wide range of platforms and also with
+  other compilers than gcc. However we have no resources to test other setups
+  and it is likely that you hit small problems. Reports and binary compiled
+  packages are of course always welcome. Send them to
+  supertux-devel@lists.berlios.de
 
-  PhysicsFS
-  ---------
-    PhysicsFS provides a Quake 3-like data access method.
+INSTALLING UNDER LINUX/UNIX
+---------------------------
 
-    You can get PhysicsFS and more information about it from:
-      http://icculus.org/physfs/
+  Supertux uses a normal autoconf configure script. The simplest way to compile
+  this package is:
 
-  Jam
-  ---
-    If you want to build SuperTux, you will need Jam, a build system by
-    Perforce. Extract the archive on your hard disk, run make and copy
-    the compiled binary (in the bin.<platform> directory) into your PATH
-    (e.g. /usr/bin).
+    1. `cd' to the directory containing the package's source code and type
+       `./configure' to configure the package for your system.  If you're
+       using `csh' on an old version of System V, you might need to type
+       `sh ./configure' instead to prevent `csh' from trying to execute
+       `configure' itself.
 
-    You can download Jam from:
-      ftp://ftp.perforce.com/jam/
+       If no configure script exists (e.g. in case you've retrieved SuperTux
+       from SVN), just run the autogen.sh script. You'll need autoconf
+       for this.
 
+       Running `configure' takes awhile.  While running, it prints some
+       messages telling which features it is checking for.
 
-INSTALLING UNDER LINUX/UNIX
----------------------------
-  -----------------------------------------------------------------
-  Note: Read this entire section before you start issuing commands!
-  -----------------------------------------------------------------
+    2. Type `jam' to compile the package.
 
-  SuperTux uses a script that checks for dependencies and disables
-  features in case the requirements are not met.
-  The script is named configure and you can specify a few parameters
-  like the directory to which you want to install SuperTux
-  (by supplying the argument --prefix=/usr/local). For more
-  information, type './configure --help'.
-  (Note: SuperTux does not need to be installed on the system,
-  you can run it from its own directory.)
+    3. Type `jam install' to install the programs and any data files and
+       documentation. (You should be root user on linux systems.
+       You can become root user with the `su' command or by using
+       `sudo jam install')
 
-  If no configure script exists (e.g. in case you've retrieved SuperTux
-  from SVN), just run the autogen.sh script. You'll need autoconf
-  for this.
+    4. The game should work now and you can remove the source directory
 
-  To compile SuperTux, a 'jam' is enough.
-  Type 'jam install' (as root) to copy it into the system.
-  (By default, SuperTux installs itself into /usr/local, see above how
-  to change this behaviour.)
+  You can customize the build process by specifying additional parameters for
+  the configure script. Type `./configure --help' for additional informations.
+  Some common options are:
 
-  So, in short, just type:
-  sh autogen.sh (in case there isn't any configure file already)
-  sh configure
-  jam
+    --prefix=$HOME/.local
+        Installs supertux in your HOME directory in the .local folder.
+        This avoids the need for system administrator privileges when
+        installing the game
+    --with-XXX=Prefix
+        Manually specify the installation directory of a library
+    --enable-debug
+        Enables debug mode and compiles extra debug symbols into the supertux
+        executable. This is usefull when sending in bug reports to the
+        developers.
 
-  And in case you want to install SuperTux into the system:
-  jam install (as root)
+Note for SVN users:
+  SuperTux does not need to be installed on the system, you can run it from
+  its own directory.
 
 
 ICON FILE
 ---------
+
   A 32x32, XPM-format icon file is available if you wish to use
   an icon for a menu entry for this game.
 
   The file is "supertux.xpm", and can be found in the
   data/images/engine/icons/ directory.
+
+SUPPORT
+-------
+
+  You can contact us at supertux-devel@lists.berlios.de and in the #supertux
+  channel on the irc.freenode.net irc server.
+