De/FlightGear bauen - Debian

From FlightGear wiki
Revision as of 02:08, 29 February 2012 by Flughund (talk | contribs) (page not up to date)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Zeichen 101 icon.png Seite ist nicht auf dem aktuellen Stand, bitte vorrübergehend die englische Version verwenden.

Flughund 21:08, 28 February 2012 (EST)



Anleitung zum Einrichten von FlightGear 2.4.0 und/oder der Entwicklerversion, hier GIT genannt, auf Debian GNU/Linux Stable 6.x (Squeeze) und Testing (Wheezy).

Auch für Oldstable 5.x (Lenny) gilt die Anleitung für Version 2.4.0. Für GIT gilt sie zumindest solange, bis sich an den Abhängigkeiten etwas entscheidendes ändert.

Leute, die sich die Hände nicht schmutzig machen wollen, können es mit Scripted Compilation on Linux Debian/Ubuntu versuchen.

Dieser Artikel ist als Kurzanleitung zu verstehen. Für detailiertere Informationen bitte den Hauptartikel Building FlightGear - Linux konsultieren.


Bedingungen und Vorbereitung

Grundvoraussetzung hardwareseits ist ein Grafikchip mit OpenGL-Unterstützung, für vollen Funktionsumfang mindestens OpenGL 2.0, inklusive einem zugehörigen, funktionierenden Treiber.

Pakete die installiert werden müssen:

  • gcc, g++, make, automake, pkg-config
  • mawk (oder gawk)
  • cmake (min. Version 2.6.0-5)
  • git, subversion, wget
  • libgl1-mesa-dev, libxrandr-dev
  • libxi-dev, libxmu-dev, libxext-dev
  • libopenal-dev (unter Lenny libopenal beachten), libalut-dev
  • libjpeg62-dev, libtiff4-dev, libpng12-dev
  • libboost1.37-dev (min 1.37, 1.40 für Lenny auf backports.debian.org erhältlich)

Während des Bauens darf das Paket simgear-dev nicht installiert sein! Das Selbe gilt für openscenegraph-dev, wenn die Version aus dem OpenSceneGraph-SVN-Repo zum Kompilieren verwendet wird.


Bauen und Installieren

Da die zu installierende Software versionsmäßig nicht denen des Systems entsprechen, ist es ratsam, FlightGear mit dem ganzen Zubehör in einem separaten Verzeichins zu installieren. Anbieten würden sich hier /usr/local/FG-2.4.0, /opt/FG-2.4.0 oder ein Unterverzeichnis in $HOME. Für dieses Verzeichnis sollte der Benutzer Schreibrechte besitzen, damit muss man für die make installs nicht root werden. Als Platzhalter für dieses Verzeichnis wird hier $prefix verwendet.
Ein weiterer Platzhalter ist $srcdir, dieser Bezeichnet das Verzeichnis in welches die Quellkodes gespeichert werden sollen. Am Einfachsten exportiert man diese Pfade, dann muss man sie in den folgenden Befehlen nicht händisch gegen die Platzhalter tauschen.

Nachfolgend aufgelistet sind die Befehle zum Herunterladen der Quellen und zum Kompilieren und Installieren von FlightGear 2.4.0/GIT und den Abhängigkeiten, die nicht über das Paketmanagement gelöst werden können.

Die Daten zu FlightGear sind ein recht großer Download (GIT etwa 3.5 GB und 2.4.0 410 MB). Um Zeit zu sparen sollte man den starten, bevor man mit dem Kompilieren beginnt.

Für git-Anfänger lohnt sich ein Blick auf git for dummies. Dort gibt es Infos und weitere Befehle zum Umgang mit FlightGears git-Ressourcen.


libopenal

Nur Lenny! Das Paket im Repo ist zu alt für fgcom. FlightGear kann man damit bauen aber es fehlen Features, wie z.B. der Dopplereffekt.

cd $srcdir
wget http://kcat.strangesoft.net/openal-releases/openal-soft-1.11.753.tar.bz2
tar xjf openal-soft-1.11.753.tar.bz2
cd openal-soft-1.11.753/build
cmake  -D CMAKE_INSTALL_PREFIX:PATH="$prefix" ..
make install


plib

Mit dem Paket plib1.8.5-dev lässt sich FlightGear zwar bauen aber es fehlen Features. Die neueste Version, erhältlich per SVN, wird empfohlen.

cd $srcdir
svn co https://plib.svn.sourceforge.net/svnroot/plib/trunk plib
cd plib
sed s/PLIB_TINY_VERSION\ \ 5/PLIB_TINY_VERSION\ \ 6/ -i src/util/ul.h
./autogen.sh
./configure --prefix=$prefix
make install


OpenSceneGraph

GIT-Anwender, insbesondere Entwickler, bevorzugen hier das jüngste Release oder gar den aktuellsten Entwicklungskode, sind sich jedoch bewusst, daß dies zu Komplikationen führen kann. Zum Zeitpunkt des Erscheinens von 2.4.0 gibt es mit neuerem als OpenSceneGraph-2.9.10 bei einigen Flugzeugen Probleme mit der Darstellung.

cd $srcdir
svn co http://www.openscenegraph.org/svn/osg/OpenSceneGraph/tags/OpenSceneGraph-2.9.10 OpenSceneGraph 
sed 's|SET(LIB_POSTFIX "64" CACHE|SET(LIB_POSTFIX "" CACHE|' -i OpenSceneGraph/CMakeLists.txt
mkdir osg-build && cd osg-build
cmake -D CMAKE_BUILD_TYPE="Release" \
      -D CMAKE_INSTALL_PREFIX:PATH="$prefix" $srcdir/OpenSceneGraph
make install


SimGear

2.4.0 und GIT:

cd $srcdir
git clone git://mapserver.flightgear.org/simgear

nur 2.4.0:

cd simgear
git checkout -b 2.4.0 origin/release/2.4.0
./autogen.sh
./configure --prefix=$prefix
make install

nur GIT:

mkdir sg-build && cd sg-build
cmake -D CMAKE_INSTALL_PREFIX:PATH="$prefix" $srcdir/simgear
make install


FlightGear Quellkode

2.4.0 und GIT:

cd $srcdir
git clone git://mapserver.flightgear.org/flightgear

nur 2.4.0:

cd flightgear
git checkout -b 2.4.0 origin/release/2.4.0
./autogen.sh
./configure --prefix=$prefix
make install

nurGIT:

mkdir fg-build && cd fg-build
cmake -D CMAKE_INSTALL_PREFIX:PATH="$prefix" $srcdir/flightgear
make install


FlightGear Daten

nur 2.4.0: Falls der Download nicht geht, bitte einen aus der Liste der Server auswählen.

cd $prefix
wget ftp://ftp.de.flightgear.org/pub/fgfs/Shared/FlightGear-data-2.4.0.tar.bz2
tar xjf FlightGear-data-2.4.0.tar.bz2

nur GIT: Bei langsamen/instabilen Internetanbidungen sollte anstelle des Clonens der FlightGear-Daten das fgdata.bundle heruntergeladen werden.

cd $prefix
git clone git://mapserver.flightgear.org/fgdata data


Probelauf

Nachdem Alles erfolgreich installiert ist, wird es Zeit für einen Test:

export LD_LIBRARY_PATH=$prefix/lib/:$LD_LIBRARY_PATH
$prefix/bin/fgfs --fg-root=$prefix/data

Für zukünftige Starts aus der Konsole lohnt sich ein Blick auf fgfsrc. Wer eine grafische Oberfläche zum Starten bevorzugt, sollte einen Blick auf FGo! oder fgrun werfen. Damit fgfs die benötigten Bibliotheken findet, muß man Debian sagen wo die sind. In obigem Beispiel wird das durch setzen von $LD_LIBRARY_PATH erreicht.


Zubehör

Optionale Programme für FlightGear. Jeder ist eingeladen, hier die Schritte zum Installieren Weiterer aufzuführen.

fgcom

Unter Lenny ist es zwingend erforderlich eine neuere Version von OpenAL als in den Repos zu verwenden.

cd $srcdir
svn co https://appfgcom.svn.sourceforge.net/svnroot/fgcom/trunk fgcom
cd fgcom/src
make INSTALL_BIN=$prefix/bin INSTALL_DIR=$prefix/fgcom \
   PLIB_PREFIX=$prefix [OPENAL_PREFIX=$prefix] install


fgrun

Ein weiteres Paket wird zum Bauen von fgrun benötigt:

  • libfltk1.1-dev
cd $srcdir
svn co http://fgrun.svn.sourceforge.net/svnroot/fgrun/trunk fgrun
cd fgrun/fgrun/
./autogen.sh
./configure --prefix=$prefix
make install