Nachdem kmobs aus privaten Gründen mit der Arbeit am AOSP-Port fürs Sensation aufgehört und ein anderer Entwickler sein Sensation gebrickt hat, arbeitet nur noch Bumble-Bee daran. Aber von ihm kommen leider keine Infos. Deshalb bin ich wirklich froh, dass Vorbeth direkt zu Beginn seiner Arbeit am OpenSensation-ROM alle Sourcecodes offen gelegt hat.
Leider wirkt es zu Beginn etwas kompliziert, wenn man Android selbst kompilieren will. Weil die Anleitung von blahbl4hblah für ArchLinux Nutzer total ungeeignet ist, habe ich seine als Grundlage genommen und diese verfasst. Ich hoffe, sie ist nicht allzu unverständlich
Damit das fertig kompilierte ROM zum Schluss auf dem HTC Sensation läuft, muss vorher die aktuelle Firmware geflasht werden.
Wir benötigen:
- Computer
- ArchLinux (<3)
- etwas Linux-Erfahrung
- mindestens 4GB RAM
- mindestens eine Dual Core CPU
- mindestens 25GB freien Speicher
Zuerst muss sichergestellt werden, dass die Repositories core, extra, community, multilib und archlinuxfr in der /etc/pacman.conf eingetragen sind.
Include = /etc/pacman.d/mirrorlist
[extra]
Include = /etc/pacman.d/mirrorlist
[community]
Include = /etc/pacman.d/mirrorlist
[multilib]
Include = /etc/pacman.d/mirrorlist
[archlinuxfr]
Server = http://repo.archlinux.fr/$arch
Als nächstes installieren wir das Tool yaourt.
Jetzt können wir die benötigten Pakete installieren.
(Die Pakete android-sdk, android-sdk-platform-tools, android-udev, esound und pngcrush werden aus dem AUR und rar aus dem archlinuxfr Repository bezogen)
Auf 64-bit Systemen müssen noch weitere Pakete installiert werden. Abfragen, ob verschiedene Pakete entfernt werden dürfen, mit Ja bzw Yes bestätigen!
Jetzt erstellen wir die nötige Verzeichnisstruktur und laden uns das repo-Tool von Google.
curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
chmod a+x ~/bin/repo
Weil das repo-Tool nicht mit der python3 verträgt, muss es auf python2 geändert werden.
Jetzt können wir das Repository initialisieren.
~/bin/repo init -u git://github.com/OpenSensation/android.git -b ics
Wenn er mit der Fehlermeldung “SyntaxError: invalid syntax” abbricht, folgenden Befehl ausführen und anschließend nochmal versuchen.
Jetzt muss der Sourcecode von Android heruntergeladen werden. Das kann je nach Internetanbindung einige Zeit dauern.
Sollten Fehlermeldungen wie “fatal: The remote end hung up unexpectedly” auftauchen, dann muss
als root ausgeführt werden. (Troubleshooting network issues)
Für CyanogenMod werden noch proprietäre Dateien (koush’s RomManager und jackpal’s Android Terminal Emulator) benötigt.
Jetzt laden wir uns das Build-Script von Vorbeth herunter.
chmod a+x ~/android/system/build.sh
Bevor Android jetzt kompiliert werden kann, müssen wieder diverse Scripte dazu gezwungen werden, python2 zu verwenden.
find build/tools/ -type f -exec sed -i 's/^\#\!\/usr\/bin\/env python.*/\#\!\/usr\/bin\/env python2/' {} \;
find . -type f -iname *.mk -exec sed -i 's/python \$/python2 \$/' {} \;
Anschließend können wir Android kompilieren:

Mittwoch, 21. März 2012 um 11:47 pm Uhr
HI und Danke für dein TUT,
Leider klappt das Kompilieren nicht.
Und zwar meckert er über das Java.
build/core/config.mk:269: *** Error: could not find jdk tools.jar, please install JDK6, which you can download from java.sun.com. Schluss.
Leider weiß ich nicht wie ich das beheben kann da ich komplett deinem tut gefolgt bin sollte das funktionieren.
Ich habe dafür extra ein sauberes System neu installiert.
ycronoy
Donnerstag, 22. März 2012 um 12:12 am Uhr
Das oben angegebene Paket "java-runtime" sollte eigentlich "openjdk6" installieren. Dort ist die java.jar enthalten. Führ "source /etc/profile.d/openjdk6.sh" aus, bevor du die build.sh startest oder log dich neu ein. Sollte beides klappen, da in beiden Fällen die openjdk6.sh ausgeführt wird.
Samstag, 24. März 2012 um 2:16 am Uhr
Danke für deine Hilfe.