Jak wiadomo wokół produktów Sony Ericsson (obecnie już Sony) powstała dość duża scena developerów próbująca ugotować mniej lub bardziej ciekawe ROMy.
Jednym z lepszych, choć nie pozbawionym wad jest kompilacja AOKP. Android Open Kang Projekt bo tak rozwija się ten skrót jest połączeniem AOSP oraz parudziesięciu udoskonaleń które naprawdę się sprawdzają i HGW nie ma ich w AOSP.
Budową AOKP-a na urządzenia z rodziny SE/Sony zajmuję się grupa KXP jednak ostatnimi czasy chłopaki (a może i dziewczyny) nie za często wydają nowe buildy, prawdopodobnie merguja do 4.2.
I o tym jak zrobić sobie builda będzie traktował ten tekst.
I o tym jak zrobić sobie builda będzie traktował ten tekst.
Wymagania techniczne:
- komputer klasy PC :)
- system operacyjny GNU/Linux (dystrybucja mało ważna ja buduje na Fedorze 17 i niej będzie tyczył się opis)
- internet :)
- trochę chęci i logicznego myślenia
- i dużo czasu na zajęcia inne niż siedzenie przed komputerem
- i dużo czasu na zajęcia inne niż siedzenie przed komputerem
Potrzebne nam będą odpowiednie pakiety:
yum install glibc.i686 glibc-devel.i686 libstdc++.i686 zlib-devel.i686 ncurses-devel.i686 \
libX11-devel.i686 libXrender.i686 libXrandr.i686 gcc gcc-c++ gperf flex bison curl wget\
glibc-devel.x86_64 zlib-devel.{x86_64,i686} libsx-devel readline-devel.i386 optipng.x86_64\
git
2. Przygotowanie kuchni
Ściągamy aplikacje stworzoną przez google do prostszego zarządzania repozytoriami git
curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repoch
Nadajemy mu prawa uruchamiania dla wszystkich.
chmod a+x ~/bin/repo
Tworzymy katalog gdzie będzie znajdowała się kuchnia naszego romu.
mkdir -p ~/Android/aokp-semc
wchodzimy do kuchni
cd ~/Android/aokp-semc
Inicjujemy repozytorium KXP
repo init -u https://github.com/KangXperiaProject/platform_manifest.git -b jb
i wreszcie wykonujemy synchronizacje repo z nasza kuchnią. czas trwania synchronizacji zależny jest od prędkości posiadanego łącza internetowego. Obecnie całe repo zajmuję dokładnie (stan na 12.12.12)
[vir@ogden aokp-semc]$ du -sh .17G .
repo sync -j10
(*10 to liczba liczba połączeń jakie zostaną wykonane w jednym czasie)
Proponuje iść na imprezę/spać obejrzeć całą trylogie Władcy Pierścieni bo ten proces nie należy do szybkich. W razie problemów typu error, czekamy aż sync się wysypie i wykonujemy komendę ponownie. Komunikat który informuje nas w 100% że mamy już całe aktualne repo wygląda mniej więcej tak:
[vir@ogden aokp-semc]$ repo sync -j10
Fetching projects: 100% (338/338), done.
Syncing work tree: 100% (338/338), done.
3. Mejkowanie
Gdy już będziemy mieli pełnego synca, wchodzimy do naszej kuchni
cd ~/Android/aokp-semc
Przygotowujemy zmienne środowiskowe.
. build/envsetup.sh
(* po . jest spacja)
wykonujemy
lunch
wybieramy platformę na jaką będziemy budować rom (w naszym przypadku to haida)
You're building on Linux
Lunch menu... pick a combo:
1. mini_armv7a_neon-userdebug
2. mini_armv7a-userdebug
3. cm_anzu-eng
4. cm_coconut-eng
5. cm_haida-eng
6. cm_hallon-eng
7. cm_iyokan-eng
8. cm_mango-eng
9. cm_satsuma-eng
10. cm_smultron-eng
11. cm_urushi-eng
12. cm_zeusc-eng
13. cm_zeus-eng
14. cm_aoba-eng
15. cm_hayabusa-eng
16. cm_hikari-eng
17. cm_mint-eng
18. cm_nozomi-eng
19. full_panda-userdebug
20. aokp_mint-userdebug
21. aokp_hayabusa-userdebug
22. aokp_tsubasa-userdebug
23. aokp_aoba-userdebug
24. aokp_nozomi-userdebug
25. aokp_hikari-userdebug
26. aokp_anzu-userdebug
27. aokp_haida-userdebug
28. aokp_hallon-userdebug
29. aokp_urushi-userdebug
30. aokp_iyokan-userdebug
31. aokp_zeus-userdebug
32. aokp_zeusc-userdebug
33. aokp_satsuma-userdebug
34. aokp_smultron-userdebug
35. aokp_coconut-userdebug
36. aokp_mango-userdebug
37. aokp_shakira-userdebug
38. aokp_robyn-userdebug
39. aokp_mimmi-userdebug
Which would you like? [full-eng]
27
Właściwe make. Po tej komendzie ruszy machina budowy romu. W 99% powinna przebiec ona bezstresowo ale jeżeli pojawi się jakiś error proponuje (jeżeli nie masz wiedzy programistycznej) poszukać na google, ktoś pewnie miał już taki błąd.
make otapackage
Parę godzin później otrzymujemy paczkę zip (szukajcie jej w out/target/product/haida/) która możemy wrzucić poprzez CWM.
Podziękowania dla FXP, KXP, AOKP, mikegapingki
Podziękowania dla FXP, KXP, AOKP, mikegapingki


Brak komentarzy:
Prześlij komentarz