\section{Orxonox Installieren, Kompilieren und Starten}

In dieser ersten Lektion wirst du lernen, wie man Orxonox auf den
Tardis Rechnern der ETH zum laufen bringt. Dazu wirst du die
gebr\"auchlichen Open Source Tools \emph{subversion} verwenden um die Daten zu \emph{fetchen} und die Automake/Autoconf scripts um das Projekt zu komilieren. \newline
Im zweiten Teil wirst du bekannte Tools ausprobieren, die zur Kommunikation zwischen den Entwicklern dient.


\begin{description}
\item[Source Code runterladen:] Zuerst m\"ussen wir aber ein Verzeichnis erstellen und wechseln in dieses:
\codesnip{gobble=0}
mkdir orxonox
cd orxonox
\end{Verbatim}
Nun k\"onnen wir den Source auschecken. Dazu wirst du deinen
Benutzernamen mit dem dazugeh\"origen Passwort brauchen, dass wir dir
auf einem separaten Blatt gegeben haben (das Blatt mit Passwort bitte nach
Eingabe und Auswendiglernen aufessen :D ).
Orxonox braucht zur Ausf\"uhrung zwei \emph{Repositories}, eines f\"ur
den Source (\verb"../orxonox/") und eins f\"ur Daten wie Grafiken,
Level und Models (\verb"../data/"). Die \emph{Repositiries} werden sowohl via ssl verbindung (https) als auch 
ungesch\"utzt angeboten (http). Deine \"Anderungen im Orxonox Source Code kannst du aber nur \"uber die
verschl\"usselte Verbindung \"ubertragen. Heute verwenden wir noch den anonymen http Zugang:
\codesnip{gobble=0}
svn co http://svn.orxonox.net/orxonox/trunk trunk
svn co http://svn.orxonox.net/data/trunk data
\end{Verbatim}
Sp\"ater, wenn wir dann den Source Code ver\"andern werden wirst du den die verschl\"usselte Verbindung verwenden m\"ussen.
Dafu\"ur wirst du noch einen Benutzernamen/Passwort erhalten.
\codesnip{gobble=0}
## Verschluesselte Verbindung
svn co https://svn.orxonox.net/orxonox/trunk trunk
svn co https://svn.orxonox.net/data/trunk data
\end{Verbatim}


\item[Source Code Compilieren] Versuche nun Orxonox zu
  kompilieren. Dazu verwendest du die standard GNU Compiler
  Collection (\verb"GCC") wie \verb"g++" und \verb"make". 

  \begin{enumerate}
    \item{Generation der Automake Files:} Damit du den source configurieren und maken kannst, musst du zuerst folgendes eingeben:
\codesnipper{gobble=0}
./autogen.sh
\end{Verbatim}
    \item{Spezielles configure flag f\"ur tardis:} Damit der Orxonox code auf den tardisen funktioniert musst du dem configure
command noch das flag \verb"--with-tardis" anf\"ugen. Das ist aber \textbf{nur} f\"ur die Computer des ITET n\"otig:
\codesnipper{gobble=0}
./configure --with-tardis
\end{Verbatim}
    \item{Kompilieren:} Um den source zu kompilieren musst du nur noch
\codesnip{gobble=0}
make
      \end{Verbatim}
ausf\"uhren. Falls du den source auf einem Computer mit mehreren Prozessoren kompilierst, kannst du den make Prozess auch parallelisieren (z.B. im ETL F11):
\codesnip{gobble=0}
make -j3
      \end{Verbatim}
Damit werden drei parallele make Prozesse gestartet.

    \item{Ein kleiner Bug:} Damit du den code nun ausf\"uhren kannst, musst du in deinem home Verzeichnis noch einen neuen Ordner erstellen (/verb".orxonox"). In diesem Ordner wird Orxonox seine Settings speichern.
      \codesnip{gobble=0}
## wechseln ins home
cd
## Verzeichnis erstellen
mkdir .orxonox
      \end{Verbatim}


    \item{Ausf\"uhren:} Um das executable auszuf\"uhren musst du nur noch
      \codesnip{gobble=0}
./src/orxonox
      \end{Verbatim}
eingeben. Orxonox wird einen Konfigurationsdialog starten. \textbf{Wichtig:} das Data-Directory musst du im Dialog auf jeden Fall bestimmen,
in dieser Installation heisst es \verb"~/orxonox/data".
  \end{enumerate}

\end{description}


\section{Kommunikation}


\begin{description}
 \item[Mailinglisten:] Trage dich in die folgenden Mailinglisen ein. Orxonox hat drei verschiedene Listen: \verb"announce" (Ank\"undigungen von Releases oder Events), \verb"dev" (Entwickler unter sich) und \verb"commit" (die commit messages).
  Geht dazu auf die folgenden Webpages, um euch anzumelden:
  \codesnip{gobble=0}
https://mail.datacore.ch/mailman/listinfo/orxonox-announce
https://mail.datacore.ch/mailman/listinfo/orxonox-dev
https://mail.datacore.ch/mailman/listinfo/orxonox-commit
  \end{Verbatim}
   Wir empfehlen dir sehr f\"ur die drei Mailinglisten einen Filter in deinem Mailclient zu definieren (z.B. kannst du f\"ur jede Liste ein Verzeichnis erstellen). Dies hilft dir den \"Uberblick zu wahren. Vor allem die orxonox-commit Liste hat zwischendurch bis zu 20 Mails pro Tag.
 
  \item[IRC:] Der \emph{Internet Relay Chat} ist gut geeignet f\"ur kleinere (real-time) Diskussionen. Wir werden viel im \emph{Orxonox IRC} anzutreffen sein, damit wir euch allen bei euren Problemen so schnell wie m\"oglich helfen k\"onnen. Auf den Tardis sind auch IRC Clients installiert, starte \verb"xchat" und \emph{joine} den Channel orxonox. 
  \codesnip{gobble=0}
xchat irc://irc.datacore.ch      
    ->   /join #orxonox
  \end{Verbatim}
  \item[Forum:] Wichtige Diskussionen werden auch im Forum gef\"uhrt. Verzweig deinen Webbrowser auf die Seite:
  \codesnip{gobble=0}
https://forum.orxonox.net
  \end{Verbatim}
Kreiere dir einen Benutzer-Login. Es ist wichtig, dass du das Forum m\"oglich viel besuchst, damit das Forum m\"oglichst interaktiv ist.

  \item[WIKI:] Damit Informationen auch f\"ur die Leute zug\"anglich gemacht werden k\"onnen, die nicht auf einer Mailingliste eingeschriben sind oder sich im IRC aufhalten, werden wichtige Informationen direkt ins Wiki geschrieben. Das Wiki ist der wichtigste Datenpool von Orxonox.
  \codesnip{gobble=0}
https://dev.orxonox.net/
  \end{Verbatim}
  Das Login f\"urs Wiki ist das gleiche wie du auch f\"ur das Subversion Repository erhalten wirst. Sobald du die Login-Daten von uns erhalten hast, kannst du  ins Wiki einloggen. Suche den Bereich People unter Misc (unten auf der Seite), dort findest du deinen Namen, in einer komischen grauen Farbe und einem Fragezeichen am Ende (undefinierte Links nehmen im Trac-Wiki diese graue Farbe an). Wenn du auf deinen Namen klickst, dann kommst du auf eine neue leere Seite. Schreibe hier etwas kleines \"uber dich, damit du die Wiki Syntax kennenlernst\footnote{Wiki Syntax auch einsehbar unter: https://dev.orxonox.net/wiki/WikiFormatting}.
  
\end{description}



\section{Selbstst\"andiges Arbeiten zu Hause}

\begin{enumerate}
\item Versuche Orxonox nun mal zu Hause zum laufen zu bringen, damit du auch
von dort arbeiten kannst. Wir empfehlen dir Orxonox unter einer Linux
Distribution aufzusetzen und zu entwicklen, da dies am einfachsten
geht. Orxonox funktioniert aber auch unter Windows und MacOSX
(V10.4). \newline
Falls du bei der Installation auf Probleme stossen solltest, komm doch
einfach in den IRC Chat oder beschreibe das Problem im Forum.

\item Schau dir unter
  \verb"https://dev.orxonox.net/wiki/PPS_TopicsWS2006" die
  Projekt Themen an und \"uberlege dir, woran du gerne arbeiten w\"urdest.
\item Installiere das 3D-Modeling Programm \verb"Blender" auf deinem Computer zu Hause (auf den Tardisen ist Blender schon installiert). Du findest binaries oder source auf:
  \codesnip{gobble=0}
http://www.blender.org
  \end{Verbatim}
\item Wir werden dir ein 3D-Model per Mail schicken, dass du mit dem Blender \"offnen solltest

\end{enumerate}
