CyanogenMOD forrásból [Kezdőknek]

írta: s3nsitivity, 9 éve

Ebben a cikkben a CM forrásból ROM-má való összeállításának alap lépéseit fogom bemutatni.

Portolásról nem fogok írni, csak forrásból való fordításról lesz szó.

Angol tudással rendelkezőknek a következő komplex leírást javaslom: cyanogen/Development

Figyelem!
Nem vállalok felelősséget ha ezek alapján elrontod, téglásítod a telefonod. Ha dühöngő sárkánnyá változik és leégeti a szomszédságot, esetleg ha nem működik az ébresztő és ezért kirúgnak.

Ez egy általános leírás a készülékek nagy részére igazak lesznek a következő lépések.

Először is szükségünk van egy Linux disztribúcióra.
Elméletben a Live CD is megteszi de én nem javaslom.
Ezen felül szükségünk van még sok feles tárhelyre. Nagyjából 50 GB-t fogunk használni.
A művelet a gazda gép teljesítményétől függően több órát is igénybe vehet.

Mivel kezdőknek íródik a cikk így a legközismertebb LINUX disztribúciót veszem alapul.
Tehát szükségünk van egy Ubuntu-ra.

Szükségünk lesz egy adminisztrátor jogokkal rendelkező Terminálra és a szükséges csomagokra valamint egy Java-ra.
Jelenleg a 8-as Java van használatban így azzal dolgozok, elméletileg Java 6 fölött bármi jó.

1 - Terminál nyitása (Ubuntu gyors gomb: CTRL+ALT+T)
2 - $SU (Ezzel admin jogot szerez a Terminál)
3 - Bekéri a Super User-hez tartozó jelszavunkat.
4 - A Java telepítése a következőként néz ki:

add-apt-repository ppa:webupd8team/java

apt-get update

apt-get install oracle-java8-installer

apt-get install oracle-java8-set-default

5 - Szükséges csomagok telepítése:

apt-get install git-core gnupg flex bison gperf build-essential \
zip curl zlib1g-dev libc6-dev libncurses5-dev x11proto-core-dev \
libx11-dev libreadline6-dev libgl1-mesa-dev tofrodos python-markdown \
libxml2-utils xsltproc pngcrush gcc-multilib lib32z1 schedtool

6 - Google Repo beszerzése, futtatási jog megadása:

mkdir ~/bin

curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo

chmod a+x ~/bin/repo

7 - Itt ajánlott egy reboot.

8 - Vissza a terminálba!

9 - Ideje beállítani a CM repo-t.
CM 12.1-el ez így néz ki:

mkdir -p ~/CM12.1/android/system

cd ~/CM12.1/android/system

PATH=~/bin:$PATH

repo init -u git://github.com/CyanogenMod/android.git -b cm-12.1

Az aktuális megtalálható a github/CyanogenMod/android oldalon.

10 - $repo sync

- Ez hosszú lesz.

11 - Szükségünk van a prebuildre is.
cd ~/CM12.1/android/system/vendor/cm/
./get-prebuilts
cd ..

Eddig a pontig csak favágás. Mostantól mindenki a saját készülékéhez készíti:
Szükségünk van az adott készülék kódnevére. Legegyszerűbben a Cyanogen oldalán találjuk ezt meg.

Néhány példa:

OnePlus One - bacon
Nexus 4 - mako
Nexus 5 - hammerhead
Nexus 6 - shamu

12 - Amennyiben nincs a CM device tree-ben a készülékünk a következő parancsokra hiba fog érkezni és kézzel github-on kell megkeresni azokat. Ellenkező esetben a következő parancsokkal elindítjuk az utolsó folyamatot.

.build/envsetup.sh
breakfast KÓDNÉV
brunch KÓDNÉV -jX

Az X a CPU magok számát jelöli.
A kódnév pedig a saját készülék egyedi kódneve.

Néhány óra elteltével megtaláljuk a flashelhető ZIP file-t a /CM12.1/out/target/product/KÓDNÉV mappában. :)

Köszönöm, hogy benéztél, remélem tudtam segíteni!

Hasznos linkek:

github - CyanogenMod/android
How To Port CyanogenMod Android To Your Own Device
Cyanogen/Devices

-s3nsitivity