summaryrefslogtreecommitdiffstats
path: root/ausarbeitung/Anhang.tex
diff options
context:
space:
mode:
authorPatrick Hornecker2010-02-26 13:06:10 +0100
committerPatrick Hornecker2010-02-26 13:06:10 +0100
commit53a79046110073bf7d4ead6320794940c9507e5e (patch)
treed6409210f662eccf174d370554c83962fb433c6c /ausarbeitung/Anhang.tex
parenttex source and code modifications (diff)
downloadfriendfinder-53a79046110073bf7d4ead6320794940c9507e5e.tar.gz
friendfinder-53a79046110073bf7d4ead6320794940c9507e5e.tar.xz
friendfinder-53a79046110073bf7d4ead6320794940c9507e5e.zip
tex source
Diffstat (limited to 'ausarbeitung/Anhang.tex')
-rw-r--r--ausarbeitung/Anhang.tex646
1 files changed, 317 insertions, 329 deletions
diff --git a/ausarbeitung/Anhang.tex b/ausarbeitung/Anhang.tex
index 878d84b..c869ad1 100644
--- a/ausarbeitung/Anhang.tex
+++ b/ausarbeitung/Anhang.tex
@@ -5,355 +5,363 @@
Um die Pakete \textit{Evil, Eina, Eet, Embryo, Evas, Ecore, Edje} und \textit{Elementary} von Ubuntu nach Windows Mobile zu
portieren, sind die folgenden Schritte nötig:
-
-Im allerersten Schritt muss eine aktuelle Version des \textit{CeGCC's} heruntergeladen und installiert werden. Die benötigten
-Dateien können auf der Projekthomepage gefunden und heruntergeladen werden. Für diese Aufgabe wird der \textit{mingw32ce} für den
-\textit{ARM}-Prozessortyp benötigt. Dieser muss auf der Homepage des CeGCC-Projekts heruntergeladen und in das passende
+Zuerst muss eine aktuelle Version des \textit{CeGCC's} heruntergeladen und installiert werden. Die benötigten
+Dateien können auf der Projekthomepage\footnote{http://cegcc.sourceforge.net/} heruntergeladen werden. Für dieses Tutorial wird
+der \textit{mingw32ce} für den \textit{ARM}-Prozessortyp benötigt. Nach dem heruntergeladen muss dieser in das passende
Systemverzeichniss entpackt werden.\newline
-
Bevor man mit dem nächsten Schritt fortfahren kann, müssen noch ein paar benötigte Packete aus dem Ubuntu-Repository installiert
werden.
-%\begin + end{listings
-\begin{verbatim}
+\begin{lstlisting}
sudo apt-get install build-essential make gcc bison flex subversion
autoconf libtool gettext libfreetype6-dev libpng12-dev zlib1g-dev
libjpeg-dev libtiff-dev libungif4-dev librsvg2-dev xorg-dev
libltdl3-dev libcurl4-dev cvs subversion git-core doxygen proj
libsqlite3-0 libsqlite3-dev
-\end{verbatim}
-
-Nachdem diese Pakete installiert wurden kann man sich nun die einzelnen Packete aus dem \textit{Subversion-Repository} der
-Entwickler herunterladen.\newline
-Nun muss man sich noch ein Verzeichniss anlegen, in welchem die für Windows Mobile kompilierten Dateien abgelegt werden. Des
-weiteren muss noch eine Datei angelegt werden, in welcher die Pfade zu dem genutzten Kompiler liegen und welche dann einmalig
-exportiert werden müssen, damit die benötigten \textit{Header-Files}, textit{Libraries} und \textit{Binaries} auch vom
-Betriebssystem gefunden werden. Diese Datei wird im folgenden ``mingw32ce.env'' benannt.
-
-\begin{verbatim}
- touch mingw32ce.env
-\end{verbatim}
-
-Nun müssen noch in diese Datei die zu exportierenden Pfade geschrieben werden.
-
-\begin{verbatim}
+\end{lstlisting}
+
+% Nachdem diese Pakete installiert wurden kann man sich nun die einzelnen Packete aus dem \textit{Subversion-Repository} der
+% Entwickler herunterladen.\newline
+Nun muss man noch ein Verzeichniss angelegt werden, in welchem die für Windows Mobile kompilierten Dateien gespeichert werden
+können. Des weiteren muss noch eine Datei angelegt werden, in welcher die Pfade zun genutzten Kompiler liegen und welche dann
+einmalig exportiert werden müssen, damit die zum portieren benötigten \textit{Header-Files}, \textit{Libraries} und
+\textit{Binaries} auch vom Betriebssystem gefunden werden. Diese Datei wird im folgenden mit \textit{mingw32ce.env} benannt. Das
+Anlegen der Datei geschieht mit dem Befehl \lstinline{touch mingw32ce.env}.
+%
+% \begin{lstlisting}
+% touch mingw32ce.env
+% \end{lstlisting}
+%
+Nun müssen noch folgende Einträge in der Datei \textit{mingw32ce.env} hinzugefügt werden.
+
+\begin{lstlisting}
export CEGCC_PATH=/opt/cegcc
export MINGW32CE_PATH=/opt/mingw32ce
export WINCE_PATH=$HOME/workspace/wince
export PATH=$CEGCC_PATH/bin:$MINGW32CE_PATH/bin:$PATH
-export CPPFLAGS="-I$WINCE_PATH/include -I$WINCE_PATH/zlib-1.2.3-dev/ \
- include
- -I$WINCE_PATH/libjpeg-6b-dev/include -I$WINCE_PATH/win_iconv-dev/ \
- include
+export CPPFLAGS="-I$WINCE_PATH/include
+ -I$WINCE_PATH/zlib-1.2.3-dev/include
+ -I$WINCE_PATH/libjpeg-6b-dev/include
+ -I$WINCE_PATH/win_iconv-dev/include
-I$WINCE_PATH/freetype-2.3.7-dev/include
-I$WINCE_PATH/libpng-1.2.33-dev/include/libpng12
- -I$WINCE_PATH/win_iconv-dev/include -I/opt/mingw32ce/arm-mingw32ce/ \
- include/"
-export LDFLAGS="-L$WINCE_PATH/lib -L$WINCE_PATH/zlib-1.2.3-dev/lib
+ -I$WINCE_PATH/win_iconv-dev/include
+ -I/opt/mingw32ce/arm-mingw32ce/include/"
+export LDFLAGS="-L$WINCE_PATH/lib
+ -L$WINCE_PATH/zlib-1.2.3-dev/lib
-L$WINCE_PATH/libjpeg-6b-dev/lib
- -L$WINCE_PATH/win_iconv-dev/include -L$WINCE_PATH/freetype-2.3.7-dev/lib
- -L$WINCE_PATH/libpng-1.2.33-dev/lib -L$WINCE_PATH/win_icon-dev/lib
+ -L$WINCE_PATH/win_iconv-dev/include
+ -L$WINCE_PATH/freetype-2.3.7-dev/lib
+ -L$WINCE_PATH/libpng-1.2.33-dev/lib
+ -L$WINCE_PATH/win_icon-dev/lib
-L$CEGCC_PATH/lib"
export LD_LIBRARY_PATH="$WINCE_PATH/bin"
export PKG_CONFIG_PATH="$WINCE_PATH/lib/pkgconfig"
-\end{verbatim}
-
-Der Inhalt dieser Datei muss nun in jeder neu geöffneten Shell neu exportiert werden, da die Variablen durch die hier gewählte
-Methode nur
-in diesen Shell's existieren, in denen sie exportiert wurden.\newline
-Bei den Variablen ``CEGCC\_PATH'' und ``MINGW32CE\_PATH'' ist der Pfad zum Verzeichniss des \textit{cegcc}, beziehungsweiße des
-\textit{mingw32ce}
-Kompilers einzutragen. Unter ``WINCE\_PATH'' muss der Pfad, zu dem Verzeichniss in dem die kompilierten Daten gespeichert werden
-sollen,
-eingetragen werden. Mit ``PATH'' werden die \textit{Binaries}, der zwei Kompiler, in den Systempfad aufgenommen. Des weiteren
-werden unter
-``CPPFLAGS'' die \textit{include}-Pfade und unter ``LDFLAGS'' die \textit{Librarie} Pfade abgelegt. ``LD\_LIBRARY\_PATH'' zeigt
-auf den Ordner
-in welchem die kompilierten \textit{Binaries} liegen. ``PKG\_CONFIG\_PATH'' zeigt schliesslich noch auf den Ordner der die
-Paketinformationen
-der installierten Dateien beinhaltet. Dieses exportieren geschieht mit dem folgenden Aufruf.
-
-\begin{verbatim}
-source <Pfad-zu-der-Datei>/mingw32ce.env
-\end{verbatim}
-
-Im nächsten Schritt muss nun noch ein Ordner angelegt werden, in welchem der \textit{Enlightenment Source-Code} abgelegt wird. Nun
-muss noch in
-dieses Verzeichniss gewechselt werden und es kann mit dem ersten Programm begonnen werden.
+\end{lstlisting}
+
+Der Inhalt dieser Datei muss nun in jeder neu geöffneten \textit{Shell} auf ein neues exportiert werden, da die Variablen durch
+die hier gewählte Methode nur in den \textit{Shells} existieren, in denen sie exportiert wurden.\newline
+Unter den Variablen \textit{CEGCC\_PATH} und \textit{MINGW32CE\_PATH} ist der Pfad zum Verzeichniss des \textit{cegcc},
+beziehungsweiße des \textit{mingw32ce} Kompilers einzutragen. Unter \textit{WINCE\_PATH} muss der Pfad zum Zielverzeichniss, der
+kompilierten Dateien, gespeichert werden. Mit \textit{PATH} werden die \textit{Binaries} des \textit{CeGCC's}, in den
+systemweiten \textit{Binary}-Pfad aufgenommen. Des weiteren werden unter \textit{CPPFLAGS} die \textit{include}-Pfade und
+unter \textit{LDFLAGS} die Pfade zu den benötigten Bibliotheken abgelegt. \textit{LD\_LIBRARY\_PATH} zeigt auf den
+Ordner in welchem die kompilierten und unter Umständen benötigten, ausführbaren Dateien liegen. \textit{PKG\_CONFIG\_PATH}
+zeigt schliesslich noch auf den Ordner der die Paketinformationen der installierten Dateien beinhaltet. Das exportieren dieser
+Werte geschieht mit dem Aufruf \lstinline{source <Pfad-zu-der-Datei>/mingw32ce.env}.\newline
+%
+%\begin{lstlisting}
+%source <Pfad-zu-der-Datei>/mingw32ce.env
+%\end{lstlisting}
+%
+Nun muss noch ein Ordner angelegt werden, in welchem der \textit{Enlightenment Source-Code} gespeichert werden kann.
+Nach dem Wechseln in diesen besagten Ordner kann mit dem nächsten Schritt fortgefahren werden.
\subsubsection*{Evil}
-Als erstes ist es nötig das Programm \textit{Evil} aus dem \textit{SVN}, welches von den Entwicklern bereit gestellt wurde,
-herunterzuladen.
-Das Herunterladen geschieht mit:
-
-\begin{verbatim}
- svn co http://svn.enlightenment.org/svn/e/trunk/evil
-\end{verbatim}
+Als erstes ist es nötig das Programm \textit{Evil} aus dem \textit{SVN}, welches von den Entwicklern bereit gestellt wurde,
+herunterzuladen. Das Herunterladen wird mit \lstinline{svn co http://svn.enlightenment.org/svn/e/trunk/evil}
+ausgeführt.
+%
+%\begin{lstlisting}
+% svn co http://svn.enlightenment.org/svn/e/trunk/evil
+%\end{lstlisting}
+%
Nachdem alle Dateien erfolgreich heruntergeladen wurden muss, falls nicht schon geschen, die Datei mit den
-\textit{Umgebungsvaribalen}
-eingelesen werden. Nachdem dies geschehen ist, kann man nun das Konfigurationsskript starten
-
-\begin{verbatim}
- ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce
-\end{verbatim}
-
-Durch diesen Aufruf wird der Installationspfad auf den Wert der Variable ``WINCE\_PATH'' gesetzt, als Zielsystem ein
-\textit{ARM-Prozessor} gewählt und der \textit{mingw32ce}-Kompiler als Kompiler gewählt.\newline
-Nachdem dieses Skript erfolgreich durchgeführt wurde, kann man im nächsten Schritt das Programm erstellen.
-
-\begin{verbatim}
- make
-\end{verbatim}
-
-Ist auch dies erfolgreich durchgeführt worden muss man nun noch in einem letzen Schritt die erstellten Dateien im Zielordner
-installieren.
-
-\begin{verbatim}
- make install
-\end{verbatim}
-
-Nun sollte \textit{Evil} erfolgreich im Zielordner installiert worden sein.
+\textit{Umgebungsvaribalen} exportiert werden. Nachdem dies geschehen ist, kann man nun das Konfigurationsskript mit dem Aufruf
+\lstinline|./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce| starten. \newline
+%
+%\begin{lstlisting}
+ %./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce
+%\end{lstlisting}
+%
+Durch das Ausführen des Skriptes mit den obigen Parametern wird der Installationspfad auf den Wert der Variable
+\textit{WINCE\_PATH} gesetzt, als Zielsystem ein \textit{ARM}-Prozessor gewählt und der \textit{mingw32ce}-Kompiler als Kompiler
+festgelegt.\newline
+Nachdem dieses Skript erfolgreich ausgeführt wurde, kann man im nächsten Schritt das Programm durch ausführen von
+\lstinline{make} erstellen und im Anschluss durch \lstinline{make install} installieren. Nach diesem Schritt sollte \textit{Evil}
+erfolgreich im Zielordner, der in der Variable \textit{WINCE\_PATH} festgelegt wurde, installiert worden sein.
+%
+%\begin{lstlisting}
+ %make
+%\end{lstlisting}
+%
+%Ist auch dies erfolgreich durchgeführt worden muss man nun noch in einem letzen Schritt die erstellten Dateien im Zielordner
+%installieren.
+%
+%\begin{lstlisting}
+ %make install
+%\end{lstlisting}
+%
\subsubsection*{Eina}
-Auch hier ist es auch wieder nötig die Dateien aus dem Entwickler-Repository herunterzuladen.
-
-\begin{verbatim}
- svn co http://svn.enlightenment.org/svn/e/trunk/eina
-\end{verbatim}
-
-Danach wird auch hier wieder das ``autogen.sh'' Skript aufgerufen.
-
-\begin{verbatim}
- ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce --disable-pthread
-\end{verbatim}
-
-Es werden bei diesem Aufruf die gleichen Parameter wie bei \textit{Evil} übergeben. Hinzu kommt noch ``--disable-pthread''. Mit
-diesem
-Parameter wird \textit{threading} beim Erstellen von \textit{Eina} deaktiviert, da \textit{ARM-Prozessoren} dies nicht
-unterstützen.\newline
-Nachdem das Skript durchgelaufen ist, muss man nun auch wieder das Programm erstellen und im Zielverzeichniss installieren.
-
-\begin{verbatim}
- make ; make install
-\end{verbatim}
+Auch hier ist es auch wieder nötig die Dateien aus dem Entwickler-Repository durch
+\lstinline{svn co http://svn.enlightenment.org/svn/e/trunk/eina} herunterzuladen.
+%
+%\begin{lstlisting}
+ %svn co http://svn.enlightenment.org/svn/e/trunk/eina
+%\end{lstlisting}
+%
+Danach wird auch hier wieder das ``autogen.sh'' Skript durch
+\lstinline|./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce --disable-pthread| Skript aufgerufen. \newline
+%
+%\begin{lstlisting}
+ %./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce --disable-pthread
+%\end{lstlisting}
+%
+Es werden bei diesem Aufruf die gleichen Parameter wie bei \textit{Evil} übergeben. Hinzu kommt noch \textit{--disable-pthread}.
+Mit diesem Parameter wird die Nutzung der \textit{POSIX} Bibliothek \textit{pthread} deaktiviert, da diese auf dem Zielsystem
+nicht unterstützt wird.\newline
+Nachdem das Skript ausgeführt wurde, muss nun auch wieder das Programm mit \lstinline{make} erstellt und im Zielverzeichniss
+mit \lstinline{make install} installiert werden.
+
+%\begin{lstlisting}
+ %make ; make install
+%\end{lstlisting}
\subsubsection*{Eet}
-Bevor man \textit{Eet} erstellen kann, muss man noch vier vorgefertigte \textit{tar-Archive} im Verzeichniss, welches in der
-Variable
-``WINCE\_PATH'' gespeichert wurde, entpacken. Diese Archive kann man unter den Links, welche in Anhang 2 zu finden sind,
-herunterladen.
-Nach dem Herunterladen müssen diese nur noch in das ``WINCE\_PATH''-Verzeichniss kopiert und entpackt werden. Nun kann man den
-Quellcode
-für \textit{Eet} herunterladen.
-
-\begin{verbatim}
- svn co http://svn.enlightenment.org/svn/e/trunk/eet
-\end{verbatim}
-
-Nachdem die Dateien heruntergeladen sind, muss wieder das ``autogen.sh``-Skript aufgerufen werden.
-
-\begin{verbatim}
- ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce
-\end{verbatim}
-
-Im Anschluss muss nun auch wieder kompiliert und installiert werden.
-
-\begin{verbatim}
- make ; make install
-\end{verbatim}
+Bevor man \textit{Eet} erstellen kann, muss man noch vier \textit{tar-Archive} im Verzeichniss, welches in der
+Variable \textit{WINCE\_PATH} gespeichert wurde, entpacken. Diese Archive können unter den Links, welche in Anhang 2 zu finden
+sind, heruntergeladen werden. Im Anschluss müssen diese nur noch in das \textit{WINCE\_PATH}-Verzeichniss kopiert und
+entpackt werden. Nun kann der Quellcode für \textit{Eet} durch ausführen von
+\lstinline{svn co http://svn.enlightenment.org/svn/e/trunk/eet} heruntergeladen werden.
+%
+%\begin{lstlisting}
+% svn co http://svn.enlightenment.org/svn/e/trunk/eet
+%\end{lstlisting}
+Nachdem die \textit{Eet} Dateien vorhanden sind, muss wieder das \textit{autogen.sh}-Skript durch
+\lstinline|./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce| aufgerufen und ausgeführt werden.
+%\begin{lstlisting}
+% ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce
+%\end{lstlisting}
+%
+Im Anschluss muss nun auch wieder mit \lstinline{make} kompiliert und mit \lstinline{make install} installiert werden.
+%
+%\begin{lstlisting}
+% make ; make install
+%\end{lstlisting}
\subsubsection*{Embryo}
-Der Erste Schritt ist auch hier das Herunterladen des Programmcodes.
-
-\begin{verbatim}
- svn co http://svn.enlightenment.org/svn/e/trunk/embryo
-\end{verbatim}
-
-Nachdem die Dateien heruntergeladen sind auch wieder das Skript aufrufen.
-
-\begin{verbatim}
- ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce
-\end{verbatim}
-
-Im Anschluss nun auch wieder kompilieren und installieren.
-
-\begin{verbatim}
- make ; make install
-\end{verbatim}
+Der Erste Schritt ist auch hier das Herunterladen des Programmcodes unter der Verwendung von
+\lstinline{svn co http://svn.enlightenment.org/svn/e/trunk/embryo}.
+%
+%\begin{lstlisting}
+% svn co http://svn.enlightenment.org/svn/e/trunk/embryo
+% \end{lstlisting}
+%
+Nachdem die Dateien heruntergeladen wurden, durch \lstinline{./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce} das
+\textit{autogen.sh}-Skript aufrufen.
+%
+% \begin{lstlisting}
+% ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce
+% \end{lstlisting}
+%
+Im Anschluss nun auch wieder kompilieren mit \lstinline{make} und installieren mit \lstinline{make install}.
+%
+%\begin{lstlisting}
+% make ; make install
+%\end{lstlisting}
\subsubsection*{Evas}
-Auch für \textit{Evas} müssen mehrere \textit{tar-Archive} heruntergeladen werden (siehe Anhang 3). Auch sollten diese in das
-gleiche Verzeichniss, wie die vorhergegangenen Archive, entpackt werden. Nun müssen noch die Dateien, welche die
-Paketinformationen beinhalten, um die heruntergeladen Pakete ergänzt werden:
-
-\begin{verbatim}
- cp $WINCE_PATH/cp libpng-1.2.33-dev/lib/pkgconfig/libpng*
- $WINCE_PATH/lib/pkgconfig/
- cp $WINCE_PATH/freetype-2.3.7-dev/lib/pkgconfig/freetype2.pc
- $WINCE_PATH/lib/freetype2.pc
-\end{verbatim}
-
-Nun müssen diese Packetinformationen noch bearbeitet werden. Dazu müssen diese mit einem beliebigen Editor geöffnet werden und in
-beiden
-Dateien der Wert von ''prefix`` auf ''WINCE\_PATH`` gesetzt werden.
-
-Nachdem dies durchgeführt wurde kann nun \textit{Evas} heruntergeladen werden.
-
-\begin{verbatim}
- svn co http://svn.enlightenment.org/svn/e/trunk/evas
-\end{verbatim}
-
-Nun muss auch hier, wie bei allen anderen Programmen das ''autogen.sh``-Skript aufgerufen werden.
-
-\begin{verbatim}
- ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce
- --disable-async-events
-\end{verbatim}
-
-Als nächster Schritt muss nun das Programm kompiliert werden.
-
-\begin{verbatim}
- make
-\end{verbatim}
-
-Sollte hierbei die Datei ''ft2build.h`` nicht gefunden werden, so muss diese an die richtige Stelle kopiert werden. Eigentlich
-liegt die
-Datei an folgendem Ort:
-
-\begin{verbatim}
- $WINCE_PATH/freetype-2.3.7-dev/include/freetype2/ft2build.h
-\end{verbatim}
-
-Allerdings wird sie im Ordner ''freetype2`` nicht gefunden. Um dies zu umgehen muss ''ft2build.h`` einfach eine Ordnerebene nach
-oben
-kopiert werden.
-
-\begin{verbatim}
- cp $WINCE_PATH/freetype-2.3.7-dev/include/freetype2/ft2build.h $WINCE_PATH/freetype-2.3.7-dev/include
-\end{verbatim}
-
-Um einen weiteren Fehler von vorneherein zu umgehen, muss man noch den Pfad eines eingebundenen Headers in ''ft2build.h``
-abändern.
-Hierzu öffnet man ''ft2build.h`` mit einem beliebigen Editor und ändert folgendes
-
-\begin{verbatim}
- #include <freetype/config/ftheader.h>
-\end{verbatim}
-
-zu
-
-\begin{verbatim}
- #include <freetype2/freetype/config/ftheader.h>
-\end{verbatim}
-
-ab. Anschliessend muss nun auch der ''freetype``-Ordner um eine Ebene nach oben kopieren werden, da die
-\textit{include}-Pfade in den Headern von ''freetype2`` nicht korrekt sind.\newline
-Falls man nun noch \textit{evas} mit \textit{DirectX-Support} kompilieren möchte, muss man das \textit{DirectX-SDK} herunterladen
-und ''ddraw.h`` in die Verzichnisse ''/opt/cegcc/arm-cegcc/include/w32api/'' und ''/opt/mingw32ce/arm-mingw32ce/include/''
-kopieren.
+Auch für \textit{Evas} müssen mehrere \textit{tar-Archive} heruntergeladen werden (siehe Anhang 3). Diese werden in das
+gleiche Verzeichniss, wie die vorhergegangenen Archive, entpackt. Nun müssen noch die Dateien, welche die Paketinformationen
+beinhalten, um die heruntergeladen Pakete ergänzt werden:
+
+\begin{lstlisting}[breakatwhitespace=true]
+ cp $WINCE_PATH/libpng-1.2.33-dev/lib/pkgconfig/libpng* $WINCE_PATH/lib/pkgconfig/
+ cp $WINCE_PATH/freetype-2.3.7-dev/lib/pkgconfig/freetype2.pc $WINCE_PATH/lib/freetype2.pc
+\end{lstlisting}
+
+Die Packetinformationen müssen noch bearbeitet werden. Dazu werden die zwei Dateien, \textit{freetype2.pc}, \textit{libpng} und
+\textit{libpng12.pc}, mit einem beliebigen Editor geöffnet und in beiden Dateien der Wert der Variable \textit{prefix} auf
+{WINCE\_PATH} gesetzt. Nachdem dies durchgeführt wurde kann nun der Quellcode von \textit{Evas}
+durch ausführen von \lstinline{svn co http://svn.enlightenment.org/svn/e/trunk/evas} heruntergeladen werden.
+%
+% \begin{lstlisting}
+% svn co http://svn.enlightenment.org/svn/e/trunk/evas
+% \end{lstlisting}
+%
+Es muss auch hier, wie bei allen anderen Programmen, das \textit{autogen.sh}-Skript durch
+\lstinline|./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce --disable-async-events| aufgerufen werden.
+%
+% \begin{lstlisting}
+% ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce --disable-async-events
+% \end{lstlisting}
+%
+Als nächster Schritt muss nun das Programm mit \lstinline{make} kompiliert werden.
+%
+% \begin{lstlisting}
+% make
+% \end{lstlisting}
+%
+Sollte hierbei die Datei \textit{ft2build.h} nicht gefunden werden, so muss diese an die richtige Stelle kopiert werden.
+Ursprünglich liegt diese Datei unter \lstinline|$WINCE_PATH/freetype-2.3.7-dev/include/freetype2/ft2build.h|.
+%
+% \begin{lstlisting}
+% $WINCE_PATH/freetype-2.3.7-dev/include/freetype2/ft2build.h
+% \end{lstlisting}
+%
+Allerdings kann sie in diesem Ordner nicht gefunden werden. Um dies zu umgehen muss \textit{ft2build.h} eine Ordnerebene
+nach oben kopiert werden. Dies geschieht durch den Aufruf von
+\lstinline|cp $WINCE_PATH/freetype-2.3.7-dev/include/freetype2/ft2build.h $WINCE_PATH/freetype-2.3.7-dev/include|. \newline
+%
+%
+% \begin{lstlisting}
+% cp $WINCE_PATH/freetype-2.3.7-dev/include/freetype2/ft2build.h $WINCE_PATH/freetype-2.3.7-dev/include
+% \end{lstlisting}
+%
+Um einen weiteren Fehler von vorneherein zu umgehen, muss noch der Pfad eines eingebundenen Headers in \textit{ft2build.h}
+abgeändert werden.
+Hierzu öffnet man \textit{ft2build.h} mit einem beliebigen Editor und ändert \lstinline{#include <freetype/config/ftheader.h>} zu
+\lstinline{#include <freetype2/freetype/config/ftheader.h>} ab. \newline
+%
+% \begin{lstlisting}
+% % #include <freetype/config/ftheader.h>
+% \end{lstlisting}
+
+% zu
+
+% \begin{lstlisting}
+% #include <freetype2/freetype/config/ftheader.h>
+% \end{lstlisting}
+%
+Anschliessend muss nun auch der \textit{freetype}-Ordner um eine Ebene nach oben kopieren werden, da die
+\textit{include}-Pfade in den Headern von \textit{freetype2} nicht korrekt sind.\newline
+Falls man nun noch \textit{Evas} mit \textit{DirectX-Support} kompilieren möchte, muss man das \textit{DirectX-SDK} herunterladen
+und \textit{ddraw.h} in die Verzichnisse \textit{/opt/cegcc/arm-cegcc/include/w32api/} und
+\textit{/opt/mingw32ce/arm-mingw32ce/include/} kopieren.
\subsubsection*{Ecore}
-Um \textit{Ecore} zu erstellen muss zu erst eine Änderung im ``winnt.h''-Header vorgenommen werden. Dieser liegt im
+Um \textit{Ecore} zu erstellen muss zu erst eine Änderung im \textit{winnt.h}-Header vorgenommen werden. Dieser liegt im
\textit{include}-Verzeichniss des \textit{mingw32ce}-Kompilers.
-\begin{verbatim}
+\begin{lstlisting}
#define PROCESS_SET_QUOTA 0x0100
#define PROCESS_SET_INFORMATION 0x0200
#define PROCESS_QUERY_INFORMATION 0x0400
+#define PROCESS_SUSPEND_RESUME 0x0800
- #define PROCESS_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED| \
+ #define PROCESS_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|
SYNCHRONIZE|0xfff)
#define THREAD_TERMINATE 0x0001
-\end{verbatim}
-
-Der mit ``+'' gekennzeichnete Eintrag ``PROCESS\_SUSPEND\_RESUME'' muss in die Datei ``winnt.h'' eingefügt werden.\newline
-Nachdem dieser Schritt ausgeführt wurde kann nun auch \textit{Ecore} kompiliert werden. Dazu wird auch hier wieder das
-``autogen.sh'' Skript ausgeführt.
-
-\begin{verbatim}
- ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce --disable-pthread
-\end{verbatim}
-
-Nachdem dies erfolgreich ausgeführt wurde können nun auch die gleichen zwei Schritte wie bei den vorhergegangenen Programmen
-ausgeführt werden.
+\end{lstlisting}
+
+Der mit \textit{+} gekennzeichnete Eintrag \textit{PROCESS\_SUSPEND\_RESUME} muss in die Datei \textit{winnt.h} eingefügt
+werden.\newline
+Nachdem dieser Schritt ausgeführt wurde kann \textit{Ecore} erstellt werden. Dazu wird auch hier wieder das
+\textit{autogen.sh}-Skript durch den Aufruf von
+\lstinline|./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce --disable-pthread| ausgeführt. \newline
+%
+% \begin{lstlisting}
+% ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce --disable-pthread
+% \end{lstlisting}
+%
+Nachdem das Skript erfolgreich ausgeführt wurde ,können nun auch die gleichen zwei Schritte wie bei den vorhergegangenen
+Programmen ausgeführt werden. Der Kompilierungsvorgang wird durch \lstinline{make} gestartet. Im Anschluss kann mit
+\lstinline{make install} installiert werden.
\subsubsection*{Edje}
-Auch hier gilt wieder, Dateien herunterladen.
-
-\begin{verbatim}
- svn co http://svn.enlightenment.org/svn/e/trunk/embryo
-\end{verbatim}
-
-Nachdem die Dateien heruntergeladen wurden, muss auch hier wieder das Skript aufgerufen werden.
-
-\begin{verbatim}
- ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce
-\end{verbatim}
-
-Die letzten beiden Schritte sind auch hier wieder kompilieren und installieren.
-
-\begin{verbatim}
- make ; make install
-\end{verbatim}
+Auch hier müssen zuerst die Dateien durch Aufruf von \lstinline{svn co http://svn.enlightenment.org/svn/e/trunk/embryo}
+heruntergeladen werden.
+%
+% \begin{lstlisting}
+% svn co http://svn.enlightenment.org/svn/e/trunk/embryo
+% \end{lstlisting}
+%
+Nachdem die Dateien heruntergeladen wurden, muss auch hier wieder das Skript durch
+\lstinline|./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce| aufgerufen werden.
+%
+% \begin{lstlisting}
+% ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce
+% \end{lstlisting}
+%
+Die letzten beiden Schritte sind auch hier wieder kompilieren und Installation durch \lstinline{make} und
+\lstinline{make install} ausführen.
+
+% \begin{lstlisting}
+% make ; make install
+% \end{lstlisting}
\subsubsection*{Elementary}
-Zuerst müssen auch hier die benötigten Daten heruntergeladen werden.
-
-\begin{verbatim}
-svn co http://svn.enlightenment.org/svn/e/trunk/TMP/st/elementary
-\end{verbatim}
-
-Nun muss auch wieder das ``autogen.sh'' Skript heruntergeladen werden.
-
-\begin{verbatim}
- ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce
- --with-edje-cc=$WINCE_PATH/bin/edje_cc
-\end{verbatim}
-
+Zuerst müssen auch hier der Quellcode und benötigte Daten heruntergeladen werden. Dies geschieht durch den Aufruf von
+\lstinline{svn co http://svn.enlightenment.org/svn/e/trunk/TMP/st/elementary}.
+%
+%
+% \begin{lstlisting}
+% svn co http://svn.enlightenment.org/svn/e/trunk/TMP/st/elementary
+% \end{lstlisting}
+%
+Nun muss auch wieder das \textit{autogen.sh}-Skript mit
+\lstinline|./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce --with-edje-cc=$WINCE_PATH/bin/edje_cc| gestartet und ausgeführt
+werden.
+%
+% \begin{lstlisting}
+% ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce
+% --with-edje-cc=$WINCE_PATH/bin/edje_cc
+% \end{lstlisting}
+%
Um zwei Fehlern vorzubeugen, welche beim Erstellen der Test-Files von \textit{elementary} auftreten, muss man im in der Datei
-``Makefile.am'' im Ordner ``src/bin/'' alle Vorkommnisse von ``test\_fileselector.c'' entfernen und folgende Zeilen
-auskommentieren.
+\textit{Makefile.am} im Ordner \textit{src/bin/} alle Vorkommnisse von \textit{test\_fileselector.c} entfernen und folgende
+Zeilen auskommentiert werden:
-\begin{verbatim}
+\begin{lstlisting}
bin_PROGRAMS = elementary_test
if BUILD_QUICKLAUNCH
bin_PROGRAMS += elementary_quicklaunch elementary_run elementary_testql
endif
-\end{verbatim}
-
-Nun kann das Programm auf gewohnte Art und Weise erstellt und installiert werden.
+\end{lstlisting}
-\begin{verbatim}
- make ; make install
-\end{verbatim}
-
-\subsubsection*{Weitere Schritte}
-
-Im Anschluss an das Erstellen dieser Programme muss nun noch ein Skript in WINCE\_PATH angelegt und dessen Zugriffsrechte
-abgeändert
+Nun kann das Programm auf gewohnte Art und Weise mit \lstinline{make} und \lstinline{make install} erstellt und installiert
werden.
+%
+% \begin{lstlisting}
+% make ; make install
+% \end{lstlisting}
-\begin{verbatim}
- touch efl_zip.sh
- chmod 774 efl_zip.sh
-\end{verbatim}
+\subsubsection*{Weitere Schritte}
-In dieses Skript wird nun der Code eingefügt, welcher unter Anhang 4 zu finden ist.\newline
+Im Anschluss an das Erstellen dieser Programme muss nun noch ein Skript in \textit{WINCE\_PATH} angelegt und dessen Zugriffsrechte
+abgeändert werden. Das Anlegen des Skriptes erfolgt durch \lstinline{touch efl_zip.sh}. Die Zugriffsrechte werden durch
+\lstinline{chmod 774 efl_zip.sh} abgeändert. \newline
+%
+% \begin{lstlisting}
+% touch efl_zip.sh
+% chmod 774 efl_zip.sh
+% \end{lstlisting}
+%
+In dieses Skript wird nun der Code kopiert, welcher unter Anhang 4 zu finden ist.\newline
Bei Ausführung dieses Skripts werden die vorhandenen \textit{DLL's} nocheinmal komprimiert und alles in einen Ordner mit dem Namen
-``efl'' kopiert. Im Anschluss wird der ganze Ordner noch in einem \textit{Zip-Archiv} komprimiert. Möchte man nun noch eigene
-Anwendungen
-hinzufügen, so muss man diese nur in diesen ``efl'' Ordner hinzufügen und erneut komprimieren. Nun kann dieses Archiv auf das
-Mobile Gerät kopiert und entpackt werden.
+\textit{efl} kopiert. Im Anschluss wird der ganze Ordner noch in einem \textit{Zip-Archiv} zusammengefast und komprimiert. Möchte
+man nun noch eigene Anwendungen hinzufügen, so muss man diese nur in diesen \textit{efl} Ordner hinzufügen und erneut
+komprimieren. Nun kann dieses Archiv auf das Mobile Gerät kopiert und entpackt werden.
\subsection*{Anhang 2}
@@ -386,7 +394,7 @@ Archive für \textit{Evas}:
\subsection*{Anhang 4}
efl\_zip.sh:
-\begin{verbatim}
+\begin{lstlisting}[breakatwhitespace=false]
#!/bin/sh
rm -rf efl/
@@ -440,64 +448,44 @@ arm-mingw32ce-strip efl/eina/mp/eina_fixed_bitmap.dll
arm-mingw32ce-strip efl/eina/mp/eina_pass_through.dll
-cp lib/evas/modules/engines/buffer/mingw32ce-arm/module.dll \
-efl/evas/modules/engines/buffer/mingw32ce-arm/engine_buffer.dll
+cp lib/evas/modules/engines/buffer/mingw32ce-arm/module.dll efl/evas/modules/engines/buffer/mingw32ce-arm/engine_buffer.dll
-cp lib/evas/modules/engines/software_16/mingw32ce-arm/module.dll \
-efl/evas/modules/engines/software_16/mingw32ce-arm/\
-engine_software_16.dll
+cp lib/evas/modules/engines/software_16/mingw32ce-arm/module.dll
+efl/evas/modules/engines/software_16/mingw32ce-arm/engine_software_16.dll
-cp lib/evas/modules/engines/software_16_wince/mingw32ce-arm/module.dll \
-efl/evas/modules/engines/software_16_wince/mingw32ce-arm/\
-engine_software_16_wince.dll
+cp lib/evas/modules/engines/software_16_wince/mingw32ce-arm/module.dll
+efl/evas/modules/engines/software_16_wince/mingw32ce-arm/engine_software_16_wince.dll
-cp lib/evas/modules/engines/software_generic/mingw32ce-arm/module.dll \
-efl/evas/modules/engines/software_generic/mingw32ce-arm/\
-engine_software_generic.dll
+cp lib/evas/modules/engines/software_generic/mingw32ce-arm/module.dll
+efl/evas/modules/engines/software_generic/mingw32ce-arm/engine_software_generic.dll
-cp lib/evas/modules/loaders/eet/mingw32ce-arm/module.dll \
-efl/evas/modules/loaders/eet/mingw32ce-arm/loader_eet.dll
+cp lib/evas/modules/loaders/eet/mingw32ce-arm/module.dll efl/evas/modules/loaders/eet/mingw32ce-arm/loader_eet.dll
-cp lib/evas/modules/loaders/jpeg/mingw32ce-arm/module.dll \
-efl/evas/modules/loaders/jpeg/mingw32ce-arm/loader_jpeg.dll
+cp lib/evas/modules/loaders/jpeg/mingw32ce-arm/module.dll efl/evas/modules/loaders/jpeg/mingw32ce-arm/loader_jpeg.dll
-cp lib/evas/modules/loaders/pmaps/mingw32ce-arm/module.dll \
-efl/evas/modules/loaders/pmaps/mingw32ce-arm/loader_pmaps.dll
+cp lib/evas/modules/loaders/pmaps/mingw32ce-arm/module.dll efl/evas/modules/loaders/pmaps/mingw32ce-arm/loader_pmaps.dll
-cp lib/evas/modules/loaders/png/mingw32ce-arm/module.dll \
-efl/evas/modules/loaders/png/mingw32ce-arm/loader_png.dll
+cp lib/evas/modules/loaders/png/mingw32ce-arm/module.dll efl/evas/modules/loaders/png/mingw32ce-arm/loader_png.dll
-cp lib/evas/modules/loaders/xpm/mingw32ce-arm/module.dll \
-efl/evas/modules/loaders/xpm/mingw32ce-arm/loader_xpm.dll
+cp lib/evas/modules/loaders/xpm/mingw32ce-arm/module.dll efl/evas/modules/loaders/xpm/mingw32ce-arm/loader_xpm.dll
-cp lib/evas/modules/savers/eet/mingw32ce-arm/module.dll \
-efl/evas/modules/savers/eet/mingw32ce-arm/saver_eet.dll
+cp lib/evas/modules/savers/eet/mingw32ce-arm/module.dll efl/evas/modules/savers/eet/mingw32ce-arm/saver_eet.dll
-cp lib/evas/modules/savers/png/mingw32ce-arm/module.dll \
-efl/evas/modules/savers/png/mingw32ce-arm/saver_png.dll
+cp lib/evas/modules/savers/png/mingw32ce-arm/module.dll efl/evas/modules/savers/png/mingw32ce-arm/saver_png.dll
-arm-mingw32ce-strip efl/evas/modules/engines/buffer/\
-mingw32ce-arm/engine_buffer.dll
+arm-mingw32ce-strip efl/evas/modules/engines/buffer/ mingw32ce-arm/engine_buffer.dll
-arm-mingw32ce-strip efl/evas/modules/engines/software_16/\
-mingw32ce-arm/engine_software_16.dll
+arm-mingw32ce-strip efl/evas/modules/engines/software_16/ mingw32ce-arm/engine_software_16.dll
-arm-mingw32ce-strip efl/evas/modules/engines/\
-software_16_wince/mingw32ce-arm/engine_software_16_wince.dll
+arm-mingw32ce-strip efl/evas/modules/engines/ software_16_wince/mingw32ce-arm/engine_software_16_wince.dll
-arm-mingw32ce-strip efl/evas/modules/engines/\
-software_generic/mingw32ce-arm/engine_software_generic.dll
+arm-mingw32ce-strip efl/evas/modules/engines/ software_generic/mingw32ce-arm/engine_software_generic.dll
-arm-mingw32ce-strip efl/evas/modules/loaders/eet/\
-mingw32ce-arm/loader_eet.dll
-arm-mingw32ce-strip efl/evas/modules/loaders/jpeg/\
-mingw32ce-arm/loader_jpeg.dll
-arm-mingw32ce-strip efl/evas/modules/loaders/pmaps/\
-mingw32ce-arm/loader_pmaps.dll
-arm-mingw32ce-strip efl/evas/modules/loaders/png/\
-mingw32ce-arm/loader_png.dll
-arm-mingw32ce-strip efl/evas/modules/loaders/xpm/\
-mingw32ce-arm/loader_xpm.dll
+arm-mingw32ce-strip efl/evas/modules/loaders/eet/ mingw32ce-arm/loader_eet.dll
+arm-mingw32ce-strip efl/evas/modules/loaders/jpeg/ mingw32ce-arm/loader_jpeg.dll
+arm-mingw32ce-strip efl/evas/modules/loaders/pmaps/ mingw32ce-arm/loader_pmaps.dll
+arm-mingw32ce-strip efl/evas/modules/loaders/png/ mingw32ce-arm/loader_png.dll
+arm-mingw32ce-strip efl/evas/modules/loaders/xpm/ mingw32ce-arm/loader_xpm.dll
arm-mingw32ce-strip efl/evas/modules/savers/eet/mingw32ce-arm/saver_eet.dll
arm-mingw32ce-strip efl/evas/modules/savers/png/mingw32ce-arm/saver_png.dll
@@ -510,7 +498,7 @@ cp zlib-1.2.3-bin/bin/zlib1.dll efl/
zip -r -9 efl.zip efl/
-\end{verbatim}
+\end{lstlisting}
\end{appendix}