# Ultimate Stunts op Mac OS X - installatie-instructies

Opmerkingen:

1. Dit is hoe ik het heb gedaan, er zijn andere manieren (namelijk frameworks gebruiken en niet Unix bibliotheken, of macports of fink gebruiken)
2. U dient in ieder geval een beetje moeten begrijpen wat u doet, ik beweer niet dat mijn instructies perfect zijn. Aan de andere kant: ze zouden u wel in de juiste richting op weg moeten helpen.

### Opzetten van de werk-omgeving

- Installeer developer tools, ofwel van de OS X installatie DVD, of van de website van Apple
- Voeg /usr/local/bin toe aan uw PATH, voor /usr/bin ( http://www.troubleshooters.com/linux/prepostpath.htm) zodat de nieuwe versies van wat u installeert standaard gekozen worden in plaats van de oudere versies
- pkg-config
  Download van http://pkgconfig.freedesktop.org/releases/. Bouw met:

          % cd /path/to/pkg-config-0.22
          % ./configure
          % make
          % sudo make install

- Autotools
  Alleen noodzakelijk als je de CVS versie hebt (denk ik)
  Installeer recentere autotools (de versie die met OS X 10.4 geleverd wordt is te oud. Misschien hebben 10.5 gebruikers dit niet nodig.). Let hier voor op dat /usr/local/bin in uw PATH is zoals hierboven beschreven, anders zal het niet werken (het zal de oudere versie kiezen).

Alle volgende programma's kunnen gebouwd en geïnstalleerd worden met de volgende commando's op de terminal:

        % cd /path/to/source_file
        % ./configure
        % make
        % sudo make install

- haal M4 op van http://ftp.gnu.org/gnu/m4/ en installeer het
- symlink m4 naar gm4 omdat dat is hoe sommige programma's er naar verwijzen.

          % sudo ln -s /usr/local/bin/m4 /usr/local/bin/gm4

- Bouw en installeer daarna autoconf en automake van GNU op de zelfde manier als hierboven beschreven
  - http://www.gnu.org/software/autoconf/
  - http://www.gnu.org/software/automake/

### OpenAL

Het OpenAL framework dat door Apple wordt geleverd op OS X 10.04 is te oud. Ook hier hebben 10.5 gebruikers misschien een recentere versie - maar in ieder geval was het bouw-systeem van Ultimate Stunts niet gepatcht voor mac frameworks dus het bouwen van de bibliotheek in Unix-stijl is het eenvoudigst. Dit deel is momenteen een beetje rommelig, en we compileren niet eens met .ogg-ondersteuning (wat betekent dat we geen muziek hebben) dus dit zal wat verbeterd moeten worden.

- Checkout OpenAL SVN (of waarschijnlijk werkt de broncode van versie 1.1 ook maar dat heb ik niet getest)

          % svn checkout http://www.openal.org/repos/openal/trunk openal
          % cd openal

- Bouw OpenAL:
  - open folder OpenAL-MacOSX, open XCode project
  - selecteer target openal.dylib en build style "deployment"
  - build
  - vind /OpenAL-MacOSX/build/Deployment/openal.dylib en kopieer het naar /usr/local/lib, waarbij u het hernoemt naar libopenal.dylib

                    % sudo cp ./OpenAL-MacOSX/build/Deployment/openal.dylib /usr/local/lib/libopenal.dylib
                    % sudo install_name_tool -id /usr/local/lib/libopenal.dylib /usr/local/lib/libopenal.dylib

- kopieer headers in /OpenAL-MacOSXbuild/include/AL naar /usr/local/include/AL

          % sudo cp -r ./include/AL/  /usr/local/include/AL

- creëer openal.pc in /usr/local/lib/pkgconfig

      prefix=/usr/local
      exec_prefix=${prefix}
      libdir=${exec_prefix}/lib
      includedir=${prefix}/include

      Name: OpenAL
      Description: OpenAL blah blah blah not an official .pc file
      Requires:
      Version: 1.1.0
      Libs: -L${libdir} -lopenal
      Cflags: -I${includedir}

- bouw alut:

          % cd /openal/alut
          % ./autogen.sh
          % ./configure
          % make
          % sudo make install

### Ophalen van de afhankelijkheden

- Haal libjpeg op van http://people.imendio.com/richard/gtk-osx/files/jpeg-6b.tar.gz (op het moment van schrijven van dit document begrijp ik dat de officiële versie van libjpeg nog steeds geen bibliotheken kan maken voor mac)

          % ./configure --enable-static --enable-shared
          % make
          % sudo make install

- Haal libpng op ( http://libpng.sourceforge.net/)

          % ./configure
          % make
          % sudo make install

- Haal gettext broncode op (neem de gettext broncode van ftp://mirrors.kernel.org/gnu/gettext)

          % cd /path/to/gettext-0.16
          % ./configure
          % make
          % sudo make install

Installeer SDL vanuit de broncode met de terminal, gebruik niet de binaries die ze leveren (ondersteuning voor de geleverde binaries kan in de toekomst toegevoegd worden, maar op dit moment is het makkelijker om ze zelf te bouwen vanaf de terminal omdat het minder patchen van het bouw-systeem van Ultimate Stunts vereist)

- Haal SDL broncode op ( http://www.libsdl.org/download-1.2.php)

          % cd /path/to/SDL-1.2.13
          % ./configure --without-x --disable-x11-video
          % make
          % sudo make install

- Haal de SDL_image broncode op

          % cd /path/to/SDL_image-1.2.6
          % ./configure --enable-jpg-shared=false --enable-png-shared=false
          % make
          % sudo make install

- symlink de include folder van het OpenGL framework naar /usr/local/include/GL (Unix programma's kunnen het op deze manier makkelijker vinden)

          % sudo ln -s /System/Library/Frameworks/OpenGL.framework/Versions/A/Headers/ /usr/local/include/GL

### Bouwen van ultimate Stunts

- haal de broncode op
- als je het configure script moet genereren (zoals wanneer je het uit CVS gehaald hebt), doe "autoconf"

        %./configure
        % make

### Starten van Ultimate Stunts

        % ./ultimatestunts/ustunts

veel plezier =)