summaryrefslogtreecommitdiffstats
path: root/ausarbeitung/Tutorial.tex.backup
diff options
context:
space:
mode:
Diffstat (limited to 'ausarbeitung/Tutorial.tex.backup')
-rw-r--r--ausarbeitung/Tutorial.tex.backup332
1 files changed, 87 insertions, 245 deletions
diff --git a/ausarbeitung/Tutorial.tex.backup b/ausarbeitung/Tutorial.tex.backup
index 835809a..715e29b 100644
--- a/ausarbeitung/Tutorial.tex.backup
+++ b/ausarbeitung/Tutorial.tex.backup
@@ -1,274 +1,116 @@
-\section{Tutorial}
+\section{Technische Grundlagen}
-Beim folgenden Abschnitt handelt es sich um ein \textit{Tutorial} in welchem Schritt für Schritt erklärt was notwendig ist um
-\textit{Enlightenment} \citep{efl} und das Programm \textit{Ueberall} von Linux nach \textit{Windows Mobile 6.1} zu portieren. Bei
-dem genutzten Linux handelt es sich um ein Ubuntu Version 9.10. Für dieses Vorhaben werden mehrere
-Tools benötigt, welche auch im folgenden kurz vorgestellt werden. Zum einen wird das \textit{Enlightenment} Packet benötigt, welches aus
-mehreren Unterprogrammen besteht. Diese wurden allesamt aus dem \textit{Subversion Repository} der Entwickler heruntergeladen.
-Ein weiterer wichtiger Rolle in diesem Vorhaben spielt der \textit{CeGCC-Compiler} \citep{cegcc}, welcher für das kompilieren von Programmcode von
-Linux nach Windows Mobile benötigt wird.\newline
-Diese Programme bilden die Grundlagen für diese Aufgabe. Um \textit{Ueberall} kompilieren ist es auch nötig noch ein paar
-\textit{Libraries} zu protieren. Auf diese wird im Abschnitt \textit{Ueberall} genauer eingegangen.\newline
-Als erstes wird nun auf den \textit{CeGCC} näher eingegangen, danach auf das Erstellen von Enlightenment für Windows Mobiel und
-schliesslich wird auch das portieren von \textit{Ueberall} genauer besprochen.
+Eine Applikation für mobile Geräte, welches das Ziel der kommunikation zwischen Benutzern und deren Vernetzung hat, sollte auf
+möglichst vielen Plattformen ausführbar sein. Somit wäre es möglich viele Nutzer zu erreichen und auch die Kommunikation zwischen
+einem Besitzer eines \textit{iPhones} sowie dem Besitzer eines \textit{PalmPre} wäre sichergestellt. Des weiteren ist es auch von
+Interesse, ob andere Programme und Bibliotheken auf den jeweiligen Systemen ausführbar sind. Grundlegend sind Betriebsysteme
+interessant, die über einen \textit{POSIX-Layer} verfügen. Dieser Layer stellt eine Schnittstelle zwischen Anwendungen und
+Betriebssytem dar. Somit können Anwendungen die auf einem \textit{Linux}-System entwickelt wurden ohne weiteres auf ein anderes,
+\textit{POSIX} kompatibles System, portiert werden.\newline
+Auch die Frage der unterstützten Programmiersprachen stellt sich, da das Programm nicht ständig neu implementiert werden soll,
+wenn es auf einem neuen Gerät ausgeführt werden soll.\newline
-\subsection{CeGCC}
-Der CeGCC ist ein \textit{Open-Source} Projekt, welches ein \textit{Crosscompiler} von Linux nach Windows Mobile entwickelt hat. Dieser
-Kompiler bassiert auf dem standart Unix C-Kompiler, dem GCC.\newline
-Eine aktuelle Version des CeGCC's kann auf der Projekthomepage gefunden und heruntergeladen werden. Es wird hierbei prinzipiell zwischen
-zwei verschiedenen Arten des CeGCC's unterschieden. Es gibt zum einen einen Kompiler der eben \textit{cegcc} genannt wird, zum anderen aber
-aber auch einen welcher \textit{mingw32ce} genannt wird. Der Unterschied zwischen diesen beiden Kompilern besteht darin, dass ersterer
-nur dann benutzt wird, wenn man nur Linux APIs nutzt. Im Unterschied dazu wird der \textit{mingw32ce}-Kompiler dann gebraucht, wenn man
-auch \textit{Windows Mobile} APIs nutzen möchte.\newline
-Für diese Aufgabe wird der \textit{mingw32ce} für den \textit{ARM}-Prozessortyp benötigt. Dieser kann auf der Homepage des CeGCC-Projekts
-heruntergeladen und in das passende Systemverzeichniss entpackt werden.\newline
-Hat man diese zwei Schritte erledigt, hat man auch schon den CeGCC erfolgreich auf seinem System installiert.
+Die Problematik der Plattformwahl aufgrund von vorhandener oder nicht vorhandener Hardware ist im direkten Vergleich nicht allzu
+groß. So haben mittlerweile die meisten der aktuellen Geräte eine ähnliche Ausstattung was Speicher und Prozessorleistung angeht.
+Auch erweiterte Features wie GPS oder Lagesensoren sind in den meisten aktuellen Geräten vorhanden oder werden in der nächsten
+Generation, des jeweiligen Herstellers, vorhanden sein.\newline
-\subsection{Enlightenment}
-Unter dem Namen \textit{Enlightenment} werden mehrere Programme zusammengefasst, welche zusammen einen kompletten \textit{Window-Manager}
-bilden. Auch hier handelt es sich um ein \textit{Open-Source} Projekt. Um ein \textit{Frontend}, welches mit einer Enlightenment Bibliothek
-erstellt wurde, auf einem Smart Phone starten zu können müssen mehrere Programme mit dem \textit{CeGCC} kompiliert werden. Diese sind: \textit{evil, eina,
-eet, embryo, evas, ecore, edje und elementary}. Diese Programme werden mit dem von den Entwicklern bereitgestelltem Source Code kompiliert.
+\subsection{Betriebsysteme für mobile Geräte}
-Bevor man allerdings damit beginnen kann, müssen noch ein paar benötigte Packete aus dem Ubuntu-Repository installiert werden.
+Im folgenden werden die fünf bekanntesten Betriebssysteme für mobile Geräte kurz vorgestellt werden. Des weiteren wird auf die
+Portierungsmöglichkeiten der einzelnen Systeme eingegangen.
-\begin{verbatim}
-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}
+\subsubsection{Windows Mobile}
-Nachdem diese Packete 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.
+Der wohl bekannteste Vertreter ist \textit{Windows Mobile}. Die aktuelle Version 6.5 wurde von Microsoft
+auch \textit{Windows Phone} betitelt.Das gesamte Betriebssystem basiert auf der \textit{Windows Win32 API} und lässt
+ähnlichkeiten zu den Desktop-Varianten der \Windows-Familie erkennen. \textit{Windows Phone} besitzt keinen
+\textit{POSIX Layer}, allerdings existiert ein \textit{Cross-Compiler} names \textit{CeGCC} \citep{CeGCC}, mit welchem
+Programme die in \textit{C}/\textit{C++} geschrieben wurden für diese Plattform kompiliert werden können.\newline
-\begin{verbatim}
- touch mingw32ce.env
-\end{verbatim}
+%Will man für dieses Betriebssystem Anwendungen entwickeln so bietet Microsoft eine eigenes \textit{Software Development Kit
+%(SDK)}
+%an, welches auch jeder frei nutzen kann. Bei der Programmierung kann hierbei sowohl auf \textit{C}/\textit{C++},
+%sowie auch auf Java zurückgegriffen werden. Allerdings ist die \textit{Win32 API} nich kompatibel mit der Desktopversion, weshalb
+%Anwendungen getrennt entwickelt oder portiert werden müssen.\newline
-Nun müssen noch in diese Datei die zu exportierenden Pfade geschrieben werden.
+%Wie Im Kapitel Tutorial schon erwähnt, lässt sich mit Hilfe eines \textit{Cross-Compilers} das \textit{Enlightenment}-Paket für
+%dieses System, mit etwas Aufwand, portieren. Durch diese Tatsache und der Unterstützung von \textit{C}/\textit{C++}
+%eignet sich Windows Mobile sehr gut als Plattform für Anwendungen, welche nich unbedingt von vorne herein für diese entwickelt
+%wurden.
-\begin{verbatim}
-export CEGCC_PATH=/opt/cegcc
-export MINGW32CE_PATH=/opt/mingw32ce
-export WINCE_PATH=$HOME/workspace/wince
+\subsubsection{Android}
-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
- -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
- -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$CEGCC_PATH/lib"
-export LD_LIBRARY_PATH="$WINCE_PATH/bin"
-export PKG_CONFIG_PATH="$WINCE_PATH/lib/pkgconfig"
-\end{verbatim}
+Bei \textit{Android} \citep{Android} handelt es sich um ein neueres Betriebssystem für Smart Phones. Das von Google entwickelte
+System setzt auf einen Linux-Kernel der Version 2.6 auf. Dieser Kernel kümmert sich um die Prozess- und Speicherverwaltung,
+Kommunikation sowie um die Hardwareabstraktion. \newline
-Der Inhalt dieser Datei muss nun in jeder neu geöffneten Shell neu exportiert werden, da sie durch die hier gewählte Methode nur in
-eben diesen Shell's gelten wo 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 Packetinformationen
-der installierten Dateien beinhaltet. Dieses exportieren geschieht mit dem folgenden Aufruf.
+Zum implementieren von Anwendungen stellt Google eigens ein eigenes \textit{SDK} bereit. Dieses greift allerdings nur auf
+\textit{Java}-Bibliotheken zurück, womit sich die nutzbaren Sprachen im moment eben auf diese beschränken. Somit können Programme
+die in \textit{C} oder \textit{C++} geschrieben wurden nicht portiert werden. Auch wenn man einen passenden
+\textit{Cross-Compiler} nutzt funktionieren ist die Portierung nicht immer möglich, da Google die \textit{libc}-Bibliothek (unter
+\textit{Android} nun \textit{Bionic} genannt) an mobile Geräte angepasst und verändert hat.\newline
-\begin{verbatim}
-source <Pfad-zu-der-Datei>/mingw32ce.env
-\end{verbatim}
+Durch diese starken Einschränkungen und dem fehlende \textit{POSIX Layer} ist es somit nicht möglich Programme, welche unter
+Linux oder in \textit{C}/\textit{C++} entwickelt wurden, für dieses System zu kompilieren.
-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.
+\subsubsection{WebOS}
-\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:
+\textit{WebOS} \citep{WebOS} gehört nicht zu den weit verbeiteten Betriebsystemen, allerdings wird es hier aufgeführt, da
+\textit{Enlightenment} portiert werden kann. Das System wurde von \textit{Palm} als Nachfolger von \textit{PalmOS} entwickelt.
+Momentan ist das System nur auf zwei Geräten zu finden: Auf dem \textit{Palm Pre} und dem \textit{Palm Pixi}.\newline
-\begin{verbatim}
- svn co http://svn.enlightenment.org/svn/e/trunk/evil
-\end{verbatim}
+Für dieses Betriebssystem existiert sowohl ein \textit{SDK} für \textit{HTML5}, \textit{CSS} und \textit{Java} sowie ein
+weiteres, welches im März 2010 veröffentlicht wird, für \textit{C} und \textit{C++}. Des weiteren existiert
+eine erweiterung des \textit{POSIX Layers} names \textit{PIPS}. Es werden somit mehrere Programmiersprachen unterstützt
+und es besteht die Möglichkeit den \textit{POSIX Layer} zu nutzen.\newline
-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
+\subsubsection{iPhone OS}
-\begin{verbatim}
- ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce
-\end{verbatim}
+Bei \textit{iPhoneOS} \citep{iPhoneOS} handelt es sich um eine portierte Version von MacOS. Es wurde eigens für das
+iPhone entwickelt. Auch für dieses System existiert ein \textit{SDK}, welches allerdings nur die Sprache \textit{Objective-C}
+unterstützt. Des weiteren fehlt auch eine Unterstützung des \textit{POSIX Layers}. Der größte Kritikpunkt an diesem System dürfte
+allerdings das fehlen von \textit{Multitasking}-Unterstützung. Somit ist es nicht möglich zwei Anwendungen parallel
+auszuführen.\newline
-Durch diesen Aufruf wird der Installationspfad auf den Wert der Variable ``WINCE\_PATH'' gesetzt und als Zielsystem ein
-\textit{ARM-Prozessor} gesetzt 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.
+\subsubsection{Symbian OS}
-\begin{verbatim}
- make
-\end{verbatim}
+\textit{SymbianOS} \citep{SymbianOS} ist eine Betriebssystem welches vorzugsweise auf Geräten der Firma \textit{Nokia} zum
+Einsatz kommt. Es existiert ein \textit{SDK}, was neben \textit{C}/\textit{C++} auch noch weitere Sprachen wie zum Beispiel
+\textit{Python} oder \textit{Java} unterstützt. Mit dem \textit{SDK} wird auch ein \textit{Cross-Compiler} angeboten, welcher es
+ermöglicht Programme direkt zu portieren. Des weitern besitzt \textit{Symian OS} auch einen \textit{POSIX Layer}.
-Ist auch dies erfolgreich durchgelofen, so muss man nun noch in einem letzen Schritt die erstellten Dateien im Zielordner installieren.
+\subsubsection{Zielplattform}
-\begin{verbatim}
- make install
-\end{verbatim}
+Als primäre Zielplattform für diese Arbeit wurde \textit{Windows Mobile} gewählt. Im ersten Schritt wurde das benutzen von
+\textit{iPhone OS} und \textit{Android} ausgeschlossen. Aufgrund ihrer Restriktionen, wie den fehlenden \textit{POSIX Layer}
+und Einschränkungen der \textit{SDK's} sowie die unterstützten Sprachen sind Programme, welche für diese Plattform entwickelt
+wurden nur auf diesen nutzbar.\newline
-Nun sollte \textit{evil} erfolgreich im Zielordner installiert worden sein.
+Aufgrund der weiten Verbreitung, sowie der vorhandenen Tools ist die Wahl für dieses Projekt auf \textit{Windows Mobile}
+gefallen. So werden zum einen viele Benutzer erreicht und zum anderen kann die Software mit geringem Aufwand nach \textit{Symbian
+OS} und \textit{WebOS} portiert werden und ist somit bei richtiger Implementierung auf mehreren Plattformen ausführbar.
-\subsubsection{eina}
+Aufgrund der Entscheidung, \textit{Windows Mobile} zu nutzen, wird als \textit{Cross-Compiler} der \textit{CeGCC} verwendet.
+Bei \textit{CeGCC} handelt es sich um ein \textit{Open-Source} Projekt, bassierend auf dem GCC. Mit desen Hilfe können in
+einer Linx Umgebung die für \textit{Windows Mobile} benötigten Bibliotheken und ausführbaren Dateien erstellt werden.\newline
-Auch hier ist es auch wieder nötig die Dateien aus dem Entwickler-Repository herunterzuladen.
+\subsection{}
-\begin{verbatim}
- svn co http://svn.enlightenment.org/svn/e/trunk/eina
-\end{verbatim}
+\subsubsection{CeGCC}
-Danach wird auch hier wieder das ``autogen.sh'' Skript aufgerufen.
+Aufgrund der Entscheidung, \textit{Windows Mobile} zu nutzen, wird als \textit{Cross-Compiler} der \textit{CeGCC} verwendet.
+Bei \textit{CeGCC} handelt es sich um ein \textit{Open-Source} Projekt, bassierend auf dem GCC. Mit desen Hilfe können in
+einer Linux Umgebung die für \textit{Windows Mobile} benötigten Bibliotheken und ausführbaren Dateien erstellt werden.\newline
-\begin{verbatim}
- ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce --disable-pthread
-\end{verbatim}
+Es wird zwischen zwei verschiedenen Arten des CeGCC's unterschieden. Zum Einen \textit{CeGCC}, zum Anderen \textit{mingw32ce}.
+Der Unterschied zwischen diesen beiden Kompilern besteht darin, dass ersterer nur dann benutzt wird, wenn man nur Linux
+Bibliotheken nutzt. Im Unterschied dazu wird der \textit{mingw32ce}-Kompiler dann gebraucht, wenn man auch \textit{Windows Mobile}
+Bibliotheken einbindet.\newline
-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.
+\subsubsection{Enlightenment}
-\begin{verbatim}
- make ; make install
-\end{verbatim}
-
-\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}
-
-\subsubsection{embryo}
-
-\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}
-
-\subsubsection{evas}
-
-Auch für \textit{evas} müssen mehrere \textit{tar-Archive} heruntergeladen werden. Auch sollen diese in das gleiche Verzeichniss, wie
-die vorhergegangenen Archive, entpackt werden. Nun müssen noch die Dateien, welche die Packetinformationen beinhalten für die heruntergeladen
-Dateien 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
-\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}
-
-
-\subsubsection{ecore}
-
-Um \textit{ecore} zu erstellen muss zu allererst eine Änderung im ``winnt.h''-Header vorgenommen werden. Dieser liegt im
-\textit{include}-Verzeichniss des \textit{mingw32ce}-Kompilers.
-
-\begin{verbatim}
- #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|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 zuerst 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.
-
-\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}
-
-\subsubsection{elementary}
-
-\subsection{Ueberall} \ No newline at end of file
+Neben einem \textit{Cross-Compiler} wird noch ein geeignetes Frontend benötigt, um das Programm auch für den Benutzer
+ansprechend darzustellen, sowie eine einfache Bedienbarkeit zu garantieren. Hier fiel die Wahl auf das freie
+\textit{Enlightenment} \citep{efl} Projekt. Dieses Softwarepaket unterstützt alle gängigen Plattformen, wie Windows, Linux, BSD
+und MacOS. Es beinhaltet einen eigenen \textit{Window-Manager} names \textit{Elementary}.