Howto Linux SVN DE

From BlinkenSisters

Diese Seite soll dem versierten Linux-Nutzer am Beispiel von Kubuntu (getestet mit V6.06 LTS und V7.10) eine Anleitung bieten, BlinkenSisters aus dem SVN-Repository zu kompilieren.


Wenn bei deiner Installation irgendwelche Probleme auftretten, zögere bitte nicht eine eMail an team<at>blinkensisters.org zu schreiben!


Kubuntu biete verschiede Packete an, um SVN zu nutzen, z.B.:

  • kdesvn GUI: ~$ apt-get kdesvn
  • subversion Konsole: ~$ apt-get install subversion

Im folgenden wird auf die Konsolenanwendung subversion eingegangen.

Contents

Erstes Installieren

Wenn du das Spiel zum ersten mal installieren möchtest, geh die folgenden Schritte durch.

Benötigte Pakete

Mit folgenden Kommandos installierst du alle Pakete, die bei einem Standart-Kubuntu zum auschecken und compilieren benötigt werden:

#  sudo apt-get install subversion libsdl1.2debian cmake lsb-cxx g++ libsdl-image1.2-dev libsdl-net1.2-dev libsdl-ttf2.0-dev libsdl-mixer1.2-dev

(siehe ggf. auch Install#Linux_.2F_Unix)

Erstes Checkout

Mit dem Befehl svn co https://blinkensisters.svn.sourceforge.net/svnroot/blinkensisterslostpixels/game/software/ blinkensisters holst du dir den gesammten aktuellen Entwickler-Quell-Code auf deinen Rechner.

~$ mkdir foo
~$ cd ~/foo
~/foo$ svn co https://blinkensisters.svn.sourceforge.net/svnroot/blinkensisters/lostpixels/game/software/ blinkensisters

Kompilieren

Es gibt zwei Arten, zwischen denen du wählen kannst:

out-ouf-source-build

Empfohlen

Cmake unterstützt Out-of-source builds. Damit können die während der Compilierung erzeugten Dateien in einem anderen Verzeichnis als dem Sourcedirectory abgelegt werden.

Das hat folgende Vorteile:

  • Der Sourcecode-Tree bleibt 'sauber'
  • Es wäre möglich, aus einem Source verschiedene Binaries (z.B. debug, release, ...) zu bauen
  • Ein Make-Target 'distclean' ist nicht verfügbar - ist aber auch nicht nötig, da derselbe Effekt durch ein rm -rf * im cmake-build verzeichnis erreicht werden kann.
~/foo$ cd ~/foo/blinkensisters/cmake-build
~/foo/blinkensisters/cmake-build$ cmake ..
~/foo/blinkensisters/cmake-build$ make
~/foo/blinkensisters/cmake-build$ sudo make install

In-source-build

Alternativ

~/foo$ cd ~/foo/blinkensitsers
~/foo/blinkensisters/lostpixels$ make
~/foo/blinkensisters/lostpixels$ sudo make install


Add-Ons

Optional

Wenn alle Add-Ons auch gleich mitinstallieren werden sollen, muss man vor dem ersten Start von LostPixels die zusätzlichen BMF's installieren:

Statt nur das /lostpixels/game/software/-Verzeichnis auszuchecken, muss man den gesammten Verzeichnis-Baum auschecken. Der svn co-Befehl sieht dann so aus:

svn co https://blinkensisters.svn.sourceforge.net/svnroot/blinkensisters blinkensisters
~/foo/blinkensisters/lostpixels/game/software/cmake-build$ cd ../../addons
~/foo/blinkensisters/lostpixels/game/addons$ make clean
~/foo/blinkensisters/lostpixels/game/addons$ make
~/foo/blinkensisters/lostpixels/game/addons$ sudo make install


Spiel starten

~$ LostPixels

siehe auch Kommandozeilen-Parameter

Weitere Informationen: HowTo Play, Eigene Level erstellen


Update

Um ein bereits installiertes Spiel auf den neuesten Stand zu bringen, gehe wie folgt vor:

~/foo$ cd blinkensisters/lostpixels
~/foo/blinkensisters/lostpixels$ svn update
~/foo/blinkensisters/lostpixels$ cd ~/foo/blinkensisters/lostpixels/game/software/cmake-build

Vor dem nächsten Befehl prüfen, das man wirklich im richtigen Verzeichnis ist!

~/foo/blinkensisters/lostpixels/game/software/cmake-build$ rm -rf * 
~/foo/blinkensisters/lostpixels/game/software/cmake-build$ cmake ..
~/foo/blinkensisters/lostpixels/game/software/cmake-build$ make
~/foo/blinkensisters/lostpixels/game/software/cmake-build$ sudo make install

Wenn das Build schon etwas älter ist, möchte man u.U. ein .lostpixels-Verzeichnis neu erstellen lassen; das alte benennt man einfach um:

~$ mv ~/.lostpixels ~/lostpixels_2007-11-16

Führt man diesen letzten Schritt nicht aus, bleiben zwar eigene Änderungen an den lokalen Level-Daten erhalten, jedoch werden Änderungen, die im SVN-Repository stattgefunden haben nicht übernommen! Die Änderungen an Level-Daten im Repository werden lokal erst dann übernommen, nachdem LostPixels einmal gestartet wurde und ein neues Verzeichniss ~/.lostpixels/ erstellt hat, weil keines (mehr) vorhanden war.