From 53a79046110073bf7d4ead6320794940c9507e5e Mon Sep 17 00:00:00 2001 From: Patrick Hornecker Date: Fri, 26 Feb 2010 13:06:10 +0100 Subject: tex source --- ausarbeitung/Anhang.tex.backup | 634 ++++++++++++++++++++++------------------- 1 file changed, 336 insertions(+), 298 deletions(-) (limited to 'ausarbeitung/Anhang.tex.backup') diff --git a/ausarbeitung/Anhang.tex.backup b/ausarbeitung/Anhang.tex.backup index 7c77240..fe799b8 100644 --- a/ausarbeitung/Anhang.tex.backup +++ b/ausarbeitung/Anhang.tex.backup @@ -5,369 +5,393 @@ 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{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 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. - -\begin{verbatim} -source /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 /mingw32ce.env}.\newline +% +%\begin{lstlisting} +%source /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 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. - -\begin{verbatim} - make -\end{verbatim} - -Ist auch dies erfolgreich durchgelofen, so 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} - -\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, +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 durchgelaufen ist, muss man nun auch wieder das Programm mit \lstinline{make} erstellen und im Zielverzeichniss +mit \lstinline{make install} installieren. + +%\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} durch ausführen von \lstinline{svn co http://svn.enlightenment.org/svn/e/trunk/eet} 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 (siehe Anhang 3). Auch sollen diese in das +% +%\begin{lstlisting} +% svn co http://svn.enlightenment.org/svn/e/trunk/eet +%\end{lstlisting} +Nachdem die Dateien heruntergeladen sind, muss wieder das ``autogen.sh``-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} +% +Im Anschluss muss nun auch wieder kompiliert mit \lstinline{make} 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 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 sind auch wieder mit \lstinline{./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce} das +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 -Packetinformationen beinhalten für die heruntergeladen Dateien ergänzt werden: +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/ +\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{verbatim} +\end{lstlisting} 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} - +beiden Dateien der Wert von ''prefix`` auf ''WINCE\_PATH`` gesetzt werden. Nachdem dies durchgeführt wurde kann nun \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} +% +Nun muss auch hier, wie bei allen anderen Programmen das ''autogen.sh``-Skript aufgerufen durch +\lstinline|./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce --disable-async-events| 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 ''ft2build.h`` nicht gefunden werden, so muss diese an die richtige Stelle kopiert werden. Ursprünglich +ist die Datei an folgendem Ort zu finden: \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 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} - +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 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 -\end{verbatim} - -zu - -\begin{verbatim} - #include -\end{verbatim} - -ab. Anschliessend zu dieser Lösung muss nun einfach der ''freetype``-Ordner um eine Ebene nach oben kopieren werden, da die -\textit{include}-Pfade in den Headern von ''freetype2`` stellenweiße nicht korrekt sind.\newline +Hierzu öffnet man ''ft2build.h`` mit einem beliebigen Editor und ändert \lstinline{#include } zu +\lstinline{#include } ab. \newline +% +% \begin{lstlisting} +% % #include +% \end{lstlisting} + +% zu + +% \begin{lstlisting} +% #include +% \end{lstlisting} +% +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. -\subsubsection*{ecore} +\subsubsection*{Ecore} -Um \textit{ecore} zu erstellen muss zu allererst eine Änderung im ``winnt.h''-Header vorgenommen werden. Dieser liegt im +Um \textit{Ecore} zu erstellen muss zu erst eine Änderung im ``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|SYNCHRONIZE|0xfff) + #define PROCESS_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED| + SYNCHRONIZE|0xfff) #define THREAD_TERMINATE 0x0001 -\end{verbatim} +\end{lstlisting} 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 dieser Schritt ausgeführt wurde kann nun auch \textit{Ecore} kompiliert werden. Dazu wird auch hier wieder das +``autogen.sh'' Skript ausgeführt durch den Aufruf von +\lstinline|./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce --disable-pthread|. \newline +% +% \begin{lstlisting} +% ./autogen.sh --prefix=$WINCE_PATH --host=arm-mingw32ce --disable-pthread +% \end{lstlisting} +% 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} - -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} - -Um zwei Fehlern vorzubeugen, welche beim erstellen der Test-Files von \textit{elementary} auftreten muss man im in der Datei +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 durch Aufruf 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, 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. 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 ``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. +auskommentieren: -\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} +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} \subsubsection*{Weitere Schritte} Im Anschluss an das Erstellen dieser Programme muss nun noch ein Skript in WINCE\_PATH angelegt und dessen Zugriffsrechte -abgeändert -werden. - -\begin{verbatim} - touch efl_zip.sh - chmod 774 efl_zip.sh -\end{verbatim} - -In dieses Skript wird nun der Code eingefügt, welcher unter Anhang 4 zu finden ist.\newline +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. +``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 ``efl'' Ordner hinzufügen und erneut komprimieren. Nun +kann dieses Archiv auf das Mobile Gerät kopiert und entpackt werden. \subsection*{Anhang 2} -Archive für \textit{eet}: +Archive für \textit{Eet}: \begin{itemize} - \item zlib-1.2.3-bin.tar.bz2: \url{http://sourceforge.net/projects/cegcc/files/ported%20packages/zlib-1.2.3/zlib-1.2.3-bin.tar.bz2/download} - \item zlib-1.2.3-dev.tar.bz2: \url{http://sourceforge.net/projects/cegcc/files/ported%20packages/zlib-1.2.3/zlib-1.2.3-dev.tar.bz2/download} - \item libjpeg-6b-bin.tar.bz2: \url{http://sourceforge.net/projects/cegcc/files/ported%20packages/libjpeg-6b/libjpeg-6b-bin.tar.bz2/download} - \item libjepg-6b-dev.tar.bz2: \url{http://sourceforge.net/projects/cegcc/files/ported%20packages/libjpeg-6b/libjpeg-6b-dev.tar.bz2/download} + \item zlib-1.2.3-bin.tar.bz2: +\newline \url{http://sourceforge.net/projects/cegcc/files/ported%20packages/zlib-1.2.3/zlib-1.2.3-bin.tar.bz2/download} + \item zlib-1.2.3-dev.tar.bz2: +\newline \url{http://sourceforge.net/projects/cegcc/files/ported%20packages/zlib-1.2.3/zlib-1.2.3-dev.tar.bz2/download} + \item libjpeg-6b-bin.tar.bz2: +\newline \url{http://sourceforge.net/projects/cegcc/files/ported%20packages/libjpeg-6b/libjpeg-6b-bin.tar.bz2/download} + \item libjepg-6b-dev.tar.bz2: +\newline \url{http://sourceforge.net/projects/cegcc/files/ported%20packages/libjpeg-6b/libjpeg-6b-dev.tar.bz2/download} \end{itemize} \subsection*{Anhang 3} -Archive für \textit{evas}: +Archive für \textit{Evas}: \begin{itemize} - \item freetype-2.3.7-bin.tar.bz2: \url{http://sourceforge.net/projects/cegcc/files/ported%20packages/freetype-2.3.7/freetype-2.3.7-bin.tar.bz2/download} - \item freetype-2.3.7-dev.tar.bz2: \url{http://sourceforge.net/projects/cegcc/files/ported%20packages/freetype-2.3.7/freetype-2.3.7-dev.tar.bz2/download} - \item libpng-1.2.33-bin.tar.bz2: \url{http://sourceforge.net/projects/cegcc/files/ported%20packages/libpng-1.2.33/libpng-1.2.33-bin.tar.bz2/download} - \item libpng-1.2.33-dev.tar.bz2: \url{http://sourceforge.net/projects/cegcc/files/ported%20packages/libpng-1.2.33/libpng-1.2.33-dev.tar.bz2/download} + \item freetype-2.3.7-bin.tar.bz2: +\newline \url{http://sourceforge.net/projects/cegcc/files/ported%20packages/freetype-2.3.7/freetype-2.3.7-bin.tar.bz2/download} + \item freetype-2.3.7-dev.tar.bz2: +\newline \url{http://sourceforge.net/projects/cegcc/files/ported%20packages/freetype-2.3.7/freetype-2.3.7-dev.tar.bz2/download} + \item libpng-1.2.33-bin.tar.bz2: +\newline \url{http://sourceforge.net/projects/cegcc/files/ported%20packages/libpng-1.2.33/libpng-1.2.33-bin.tar.bz2/download} + \item libpng-1.2.33-dev.tar.bz2: +\newline \url{http://sourceforge.net/projects/cegcc/files/ported%20packages/libpng-1.2.33/libpng-1.2.33-dev.tar.bz2/download} \end{itemize} \subsection*{Anhang 4} efl\_zip.sh: -\begin{verbatim} +\begin{lstlisting}[breakatwhitespace=false] #!/bin/sh rm -rf efl/ @@ -422,29 +446,43 @@ 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/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_generic/mingw32ce-arm/module.dll efl/evas/modules/engines/software_generic/mingw32ce-arm/engine_software_generic.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_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/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/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/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 -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_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/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_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/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 @@ -457,7 +495,7 @@ cp zlib-1.2.3-bin/bin/zlib1.dll efl/ zip -r -9 efl.zip efl/ -\end{verbatim} +\end{lstlisting} \end{appendix} -- cgit v1.2.3-55-g7522