-Use "jump-with-up" in config for all controlers. No need
[supertux.git] / INSTALL
diff --git a/INSTALL b/INSTALL
index d5712ce..ba366e4 100644 (file)
--- a/INSTALL
+++ b/INSTALL
-INSTALL.txt for Super Tux
+- Install instructions for SuperTux -
+http://supertux.lethargik.org/
 
-by Bill Kendrick
-bill@newbreedsoftware.com
-http://www.newbreedsoftware.com/supertux/
+Last update: December 20, 2007 by Christoph Sommer 
 
-Version 0.0.6
-
-December 15, 2004
+BINARIES
+--------
+    
+  We try to provide precompiled binaries of SuperTux for a number of platforms.
+  You should check
 
+    http://supertux.lethargik.org/wiki/Download
+    
+  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 source code yourself. In this case read the next sections.
 
 REQUIREMENTS
 ------------
 
-  CONTROLS
-  --------
-    The game can be played with either a the keyboard or a joystick.
-
-  SDL
-  ---
-    "Super Tux" was programed using the "Simple Direct Media" layer
-    libraries by Sam Lantinga.  This means that the game can
-    theoretically run under any environment that the SDL libraries support.
-
-    (As of this program's release, this includes: Linux X11/DGA,
-    Win32 WinDIB/DirectX, BeOS BWindow, and Solaris X11, as well
-    as unofficually supported: Linux SVGAlib, IRIX 6.x X11,
-    FreeBSD 3.x X11, and MacOS.)
-
-    The Simple DirectMedia Layer is required to compile this game.
-
-    You can download the SDL libraries from:
-      http://www.libsdl.org/
-
-  SDL_image
-  ---------
-    SDL_image is also required.  (It is used to load the PNG format images
-    that come with Super Tux!)
-
-  SDL_mixer
-  ---------
-    Sound and music are available, but are not required (see below).
-    You will need the "SDL_mixer" library compiled and installed if
-    you want sound.
-
-
-INSTALLING UNDER LINUX/UNIX
----------------------------
-  -----------------------------------------------------------------
-  Note: Read this entire section before you start issuing commands!
-  -----------------------------------------------------------------
-
-  First make sure SDL, SDL_image and, optionally, SDL_mixer, are
-  installed on your system.
-
-  The "Makefile" that comes with "Super Tux" assumes a number
-  of defaults about your system.  You can edit their values in
-  the "Makefile" itself, or specify their values when you run
-  the "make" command (ie, "make VARIABLE=value").
-
-  The things you will wish to edit are:
-
-    SDL_PREFIX=/usr/local
-
-      This defines the base location where the "include/SDL/"
-      and "lib/SDL/" directories will be found.  (They contain
-      the C header files and compiled object files for SDL,
-      respectively.)
-
-
-    DATA_PREFIX=$(PWD)/data/
-
-      This defines where "Super Tux"'s "data/" directory is
-      to be found.  The default assumes that you wish to leave
-      it where it is right now ("$(PWD)" expands to become the
-      current direcotry.
-
-      This variable is useful if you plan on moving the "data/"
-      directory elsewhere, say a globally-accessible
-      "/usr/local/games/supertux-data/".
-
-    JOY=YES
-
-      This causes "Super Tux" to be compiled with joystick
-      support.  If you don't have a version of SDL that supports
-      joystick, or just don't want joystick support, set this to "NO".
-
-    DEBUG_FLAG=-DDEBUG
-
-      This tells the compiler to generate an executable file with
-      internal debugging messages. If you don't want to see those
-      annoying texts, just edit it as below:
-
-    DEBUG_FLAG=
-
-  To compile the game, type the command:
-
-    make           [ with whatever variable changes you want, if any ]
-
-  If you decided that you wanted the data somewhere else, make sure
-  to move it there.  If you wanted it to be accessible to others
-  (ie, you're an administrator installing a new game for your users),
-  make sure to set the permissions for the files!  (You'll also want
-  to move the "supertux" binary to somewhere globally accessible,
-  and set its permissions, as well, of course!)
-
-  Note: If you do not have the SDL_mixer library, or wish to not
-  compile sound support into the game, you can compile it like this:
-
-    make nosound   [ with whatever variable changes you want, if any ]
-
-  If you wish to return the directory to its distribution state,
-  (remove the ".o" object files, and the "supertux" executable program
-  file), you can run:
-
-    make clean
-
-
-ICON FILE
----------
-  A 32x32, XPM-format icon file (using the standard 23-color "cmap.xpm"
-  color palette) is available if you wish to use an icon for this game.
-
-  The file is "supertux-icon.xpm", and installed in Super Tux's
-  "data/images/" directory.
-
-
-The End!
+  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.
+  You can also check
+
+    http://supertux.lethargik.org/wiki/Building_SuperTux
+
+  for up-to-date build instructions for a variety of different platforms and
+  distributions.
+
+* 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
+
+* CMake 2.4.7 or later
+    Download: http://www.cmake.org/HTML/Download.html
+    Homepage: http://www.cmake.org/
+* 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 Mac OS 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 Mac OS 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.lethargik.org
+
+INSTALLING UNDER LINUX/UNIX USING CMAKE
+---------------------------------------
+
+  SuperTux uses CMake to generate a set of Makefiles for the build process. To
+  generate these Makefiles and build SuperTux, perform the following steps:
+
+    1. `cd' to the directory where you unpacked the SuperTux source 
+       archive, i.e. to the directory containing `src' and `data'.
+
+    2. Create and change to a new, empty build directory by running
+       `mkdir build', `cd build'.
+
+    3. Run `cmake ..' to create the Makefiles needed to build SuperTux with 
+       standard options. If you are missing any libraries needed to build
+       SuperTux, install those first, then try running CMake again. See below
+       for instructions on how to change to standard options.
+
+    2. Type `make' to start the build process.
+
+    3. Type `make install' to install the programs and any data files and
+       documentation. (You should be a root user on Linux systems.
+       You can become a root user with the `su' command or by using
+       `sudo make install')
+
+    4. The game should work now and you can remove the source directory.
+
+  You can customize the build process by setting additional options for CMake.
+  The easiest way to do this is to use run `ccmake ..' instead of `cmake ..' 
+  to bring up the curses-based user interface of CMake. Select and option using the
+  arrow keys, change the selected option by pressing the Enter key, then
+  hit the `c' (repeatedly, if necessary) to apply your changes and bring
+  up new options resulting from your newly set ones. When you are done, press 
+  the `g' key to generate a new set of Makefiles and exit.
+
+  Alternatively, you can pass options to `cmake ..' via the command line. 
+  Some common command line switches are:
+
+    -DCMAKE_VERBOSE_MAKEFILE=ON
+        Generates Makefiles that print all commands prior to executing them.
+    -Dxxx_LIBRARY=/path/to/library.so -Dxxx_INCLUDE_DIR=/path/to/headerfiles
+        Manually specify the installation directory of a library.
+    -DDEBUG=ON
+        Enables debug mode and compiles extra debug symbols into the SuperTux
+        executable. This is useful when sending in bug reports to the
+        developers.
+
+Note for SVN users:
+  SuperTux does not need to be installed on the system, you can run it from
+  its own directory.
+
+SUPPORT
+-------
+
+  You can contact us at supertux-devel@lists.lethargik.org and in the #supertux
+  channel on the irc.freenode.net IRC server.
+