Ich habe mich rangemacht einen neuen Kernel für das
WeTab zu kompilieren. Das ist aber mit einigen Hürden gepflastert, die ich aber (dank Internet) umschiffen konnte.
VMWare
Als erstes habe ich mir auf meinem großen Rechner eine VMWare eingerichtet.
Zum Download von VMWare-Player gehts hier
http://downloads.vmware.com/de/d/info/desktop_downloads/vmware_player/3_0Ubuntu
Dann hab ich mich für Ubuntu 10.10 als Betriebssystem entschieden. Also das derzeit Neueste.
Zum Download gehts hier
http://www.ubuntu.com/desktop/get-ubuntu/downloadMan braucht eine große Maschine mit viel Platz um Ubuntu in der VMWare ordentlich laufen zu lassen.
Meine hat 4Gig Hauptspeicher und bin im (fast) Terrabytebereich mit verschiedenen Festplatten.
Für den normalen (Windows)Entwickler sollte es kein Problem sein, auch mal ein Ubuntu aufzusetzen.
Wenn doch... Lass die Finger vom Android-kompilieren :-)
Ich habe Ubuntu 2,7 Gig Hauptspeicher und 20 Gig Platte gegönnt.
Nun habe ich folgende Webseite befolgt
http://forum.sdx-developers.com/android-2-1/(how-to)-compile-android-2-1/Quintessenz hier zum abtippen in der Rootshell (Terminal)
Installiere die notwendigen Zusatzprogramme
sudo apt-get install git-core gnupg flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev
Installiere Java JDK in Version 5
Es soll zwar die Froyo version bereits mit der 6er laufen, aber ich halte mich an die Angaben um nichts falsch zu machen.
Man muss dazu sagen, dass Java 5 bereits durch Java 6 abgelöst wurde und dadurch am System etwas geändert werden muss um die alten Programme zu bekommen.
Zuerst mal die sources.list Datei editieren
gksudo gedit /etc/apt/sources.list
Am Ende dann diese Zeilen einfügen
deb http://us.archive.ubuntu.com/ubuntu/ jaunty multiverse
deb http://us.archive.ubuntu.com/ubuntu/ jaunty-updates multiverse
Nun das System Updaten und java 5 installieren
sudo apt-get update
sudo apt-get install sun-java5-jdk
Für Lizenzgeschichten noch das hier
sudo apt-get install valgrind
Nun ein bin Verzeichnis anlegen, in dem man Programme ablegen kann, die automatisch im Pfad gefunden werden
cd ~
mkdir bin
PATH=$PATH:~/bin
Das Programm repo laden und ausführbar machen
curl http://android.git.kernel.org/repo >~/bin/repo
chmod a+x ~/bin/repo
Unser Androidverzeichnis anlegen¶
mkdir android
cd android
Ab hier muss man sich entscheiden ob man
Android von Google oder
Android-X86 von www.android-x86.org machen will.
Android von Google¶
Da bekommt man die original Sourcen geliefert. Die sind für ARM-Rechner, also Handys, optimiert.
Originalinfos unter
https://sites.google.com/a/android.com/opensource/downloadrepo init -u git://android.git.kernel.org/platform/manifest.git
Man wird nach Name und Email gefragt. Ist nur dann notwendig, wenn man Bugs oder ähnliches melden möchte.
Das Androidverzeichnis muss nun noch aus dem Repository gefüllt werden.
repo sync
Und das dauert ein wenig.
der repo init muss nur einmal gemacht werden, dann nur noch der sync um an neue Sourcen zu kommen.
Mit
make
kann man das kompilieren anstossen. Nimm Zeit mit, oder geh ein paar Stunden spazieren :-)
Android von www.android-x86.org¶
Hier sind die teilweise geänderten Sourcen um das ganze unter X86 Maschinen laufen zu lassen.
Der Link zum Original:
https://sites.google.com/a/android.com/opensource/downloadHier muss man sich schon beim init für einen "branch" entscheiden. Also welche Version man haben will.
Ich habe mich für die 2.2 also froyo entschieden.
repo init -u git://git.android-x86.org/manifest.git -b froyo-x86
Den Sourcecode holen mit
repo sync
Nun schaut auf die Originalpage. da ist eine Liste an Platformen, für die man kompilieren kann.
Der Touchscreen hat mit der sparta (Dell Inspirion Mini Duo) bereits am wetab funktioniert.
Also wäre ein kompilieren eines iso-files für diese Platform ein
make iso_img TARGET_PRODUCT=sparta
Ich habe mich entschieden eine komplett neue Platform anzulegen. Dazu verwendete ich auch den lunch-Befehl und das
m -jX iso_img zum kompilieren (das X ist die Anzahl an Prozessorkernen am Zielsystem)
Dazu habe ich mir die viewpad10-Einstellungen kopiert und neue Verzeichnisse angelegt.
Da der Hersteller offiziell Medion ist habe ich unter /android/device/medionag/wetab die ganzen Inhalte von /android/device/viewsonic/viewpad10 rein kopiert.
Der Touchscreen von der sparta-Version hat funktioniert, also hab ich mir eine Mischung erzeugt. So wie ich dachte das es stimmen müsste.
Dann mit
. build/envsetup.sh
(da ist wirklich ein Punkt vorne)
das Environment neu erzeugt.
Nun einfach mal
lunch
aufrufen, dann kann man die richtige Platform mit einer Nummer auswählen.
Und das kompilieren eines iso startet dann mit
m -j1 iso_img
will man ein USB-Image dann eben
m -j1 usb_img