# Ultimate Stunts 0.6.x kompilieren

### Anforderungen

Um Ultimate Stunts zu kompilieren braucht ihr eins UNIX-ähnlichnes Betriebssystem mit einem C/C++ Compiler. Zusätzlich benötigt ihr das Programm 'make' und eine Shell-Programm um das Konfigurationsscript auszuführen. Für alle Linux- und Unixbenutzer (oder vergleichbare Betriebssysteme) sollte das kein Problem sein. Windowsbenutzer können Cygwin herunterladen, um den Anforderungen zu genügen. Ultimate Stunts wird während der Entwicklung immer für Cygwin portierbar gehalten.

Natürlich solltet ihr auch noch die entsprechenden Bibliotheken und Entwicklungs-Pakete installiert haben. Der Grafikteil benötigt die openGL- und SDL-Bibliotheken (und deren Anforderungen). Die anderen Unterprogramme (wie der Server) können auch SDL benutzen, aber sie können auch ohne SDL kompiliert werden. Für die Audiountersützung braucht ihr FMOD oder openAL: wenn ihr weder FMOD noch openAL habt, wird UlitimateStunts ohne Audiounterstützung kompiliert. Falls ihr beides habt, benutzt UlitmateStunts standardmäßing openAl.

Die nötigen Bibliotheken findet ihr hier.

- FMOD
- openAL
- SDL

### Bibilotheken für Cygwin

Da die Cygwin-Bibliotheken manchmal schwer zu bekommen sind, habe ich mich entschieden, euch die Cygwin-Pakete hier bereitzustellen: SDL und FMOD. Die Pakete sollten ins Cygwin-Verzeichnis extrahiert werden. Dann können sie direkt von Ultimate Stunts benutzt werden.

### FMOD Kopfdateien

Ultimate Stunts sucht die FMOD Kopfdateien im Unterverzeichnis "fmod" irgendwo im Standardsuchpfad (include search path). Am besten ihr legt die Dateien fmod.h usw. nach /usr/include/fmod. Die FMOD-Objebtdatei (.so) legt ihr z.B. nach /usr/lib. UltimateSunts sucht nach libfmod.so, also müsst ihr vielleicht eine symbolische Verknüpfung (z.B. "ln -s libfmod-371.so libfmod.so") anlegen.

### Kompilieren

Wenn ihr keine Entwickler seid, können Probleme während des Kompilierens schwer zu lösen sein. Ohne auftretende Probleme sollte das Kompilieren jedoch einfach sein.

Zuerst solltet ihr das Quellpaket herunterladen und es in ein neues Verzeichnis extrahieren. Um Ultimate Stunts für euer System zu konfigurieren, müsst ihr das Konfigurationsscript ausführen:

    ./configure

Wenn alles funktioniert hat, erstellt das Konfigurationsscript einige Dateien mit dem Namen "Makefile". Damit kann "make" die Kompilierung automatisch ausführen. Startet make mit folgendem Befehl:

    make

Make kompiliert zuerst den Quelltext, der von allen Programmteilen benutzt wird. Danach werden die programmteilspezifischen Quelltexte kompiliert, verknüpft und ausführbaren Dateien verarbeitet. Diese befinden sich in den jeweiligen Unterprogrammverzeichnissen.

    make install

"make install" ist nicht unbedingt notwendig und das Spiel zu testen: Mit ./execselect.sh oder ./ultimatestunts/ustunts aus dem Quelltextverzeichnis (./src) könnt ihr Ultimate Stunts bereits starten. "make install" geht von einer UNIX-ähnlichen Verzeichnisstruktur aus, deswegen ist eine eigenhändige Installation bei anderen Betriebssystemen wahrscheinlich besser. Der Befehl muss als Administrator (root) ausgeführt werden. Die Standardverzeichnise für die ausführbaren Dateien sind /usr/local/bin und /usr/local/share/ultimatestunts. Danach könnt ihr Ultimate Stunts mit dem Befehl ustunts starten (vorrausgesetzt die Verzeichnisse mit den ausführbaren Dateien sind in der Pfad-Variable des Anwenders).

### DLL-Dateien

Windowsbenutzer, die die Programme über den Explorer, das Startmenü oder anderen üblichen Wegen ausführen möchten, sollten wissen, das Cygwin-Programme immer die cygwin1.dll benötigen. Ultimate Stunts braucht ebenfalls die SDL.dll und fmod.dll. Sucht die Dateien (in den Paketen) und kopiert sie beispielsweise in das Verzeichnis der ausführbaren Dateien von Ultimate Stunts. Um ein Mehrspielernetzwerkspiel zu starten, müsst ihr vielleicht die Pfad-Variable verändern (im Windows-Paket könnt ihr sehen, wie ich es gemacht habe).