Guida: come compilare la crDroid 4.4 kitkat
ATTENZIONE
Nonostante io abbia testato queste procedure sul mio pc e sul mio galaxy nexus, non mi assumo la responsabilità di eventuali danni causati dal loro uso.
Questa guida è per Ubuntu 13.10 64bit. Non usate il 32bit.
Se usate un'altra versione di Ubuntu alcuni pacchetti potrebbero essere differenti.
1) INSTALLARE L'AMBIENTE DI COMPILAZIONE
Togliete openJDK e installate Java 6 jdk. Aprite il terminale e digitate o copiate da qua (al termine di ogni comando date invio):
codice:
sudo apt-get purge openjdk-\* icedtea-\* icedtea6-\*
Questo toglierà openJDK.
codice:
sudo add-apt-repository ppa:webupd8team/java
codice:
sudo apt-get update && sudo apt-get install oracle-java6-installer
Questi comandi scaricano e installano java 6!
Per essere sicuri di avere installato correttamente java scrivete nel terminale:
Dovreste vedere qualcosa simile a:
java version "1.6.0_45"
Java(TM) SE Runtime Environment (build 1.6.0_45-b06)
Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode)
Ora digitate:
codice:
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 libc6-dev lib32ncurses5-dev x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 lib32z-dev libgl1-mesa-glx:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc readline-common libreadline6-dev libreadline6 lib32readline-gplv2-dev libncurses5-dev lib32readline5 lib32readline6 libreadline-dev libreadline6-dev:i386 libreadline6:i386 bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev lib32bz2-dev libsdl1.2-dev libesd0-dev squashfs-tools pngcrush schedtool libwxgtk2.8-dev python lzop
Per installare tutti i pacchetti necessari.
Quando finisce scrivete:
codice:
sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
Ora installate repo:
codice:
mkdir ~/bin && curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo && chmod a+x ~/bin/repo
Modificate .bashrc:
codice:
sudo nano ~/.bashrc
Vi aprirà un file con il txt editor, alla fine del file aggiungete questa linea:
codice:
export PATH=~/bin:$PATH
Salvate (In nano per salvare premete Ctrl-O e Enter, poi Ctrl-X per uscire).
Riavviate bash:
2) DOWNLOAD DEI SORGENTI: (Se volete compilare la cm10.1 anziche la cm9 o la cm10 seguite il punto "2 - Download dei sorgenti" al secondo post)
codice:
mkdir ~/cyanogenmod
cd ~/cyanogenmod
Questi comandi creano una cartella chiamata "cyanogenmod" e la aprono.
Inizializzate i repository:
Per la cm11 -
codice:
repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0
Aprite la cartella cyanogenmod (manualmente, non con il terminale, la trovate nella home), premete ctrl+H per vedere i file nascosti, aprite .repo, aprite local_manifests e modificate con l'editor di testo il file roomservice.xml (se non c'è createlo):
Aggiungete queste linee:
codice:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote fetch="http://github.com/" name="gh" revision="master" />
<remote fetch="https://github.com/TheMuppets/" name="TheMuppets" revision="cm-11.0" />
<project name="TheMuppets/proprietary_vendor_samsung" path="vendor/samsung" remote="gh" revision="cm-11.0" />
<project name="TheMuppets/proprietary_vendor_imgtec" path="vendor/imgtec" remote="gh" revision="cm-11.0" />
<project name="TheMuppets/proprietary_vendor_broadcom" path="vendor/broadcom" remote="gh" revision="cm-11.0" />
<project name="TheMuppets/proprietary_vendor_invensense" path="vendor/invensense" remote="gh" revision="cm-11.0" />
<project name="TheMuppets/proprietary_vendor_widevine" path="vendor/widevine" remote="gh" revision="cm-11.0" />
<project name="TheMuppets/proprietary_vendor_nxp" path="vendor/nxp" remote="gh" revision="cm-11.0" />
<project name="CyanogenMod/android_device_samsung_maguro" path="device/samsung/maguro" remote="github" revision="cm-11.0" />
<project name="CyanogenMod/android_kernel_samsung_tuna" path="kernel/samsung/tuna" remote="github" revision="cm-11.0" />
<project name="CyanogenMod/android_device_samsung_tuna" path="device/samsung/tuna" remote="github" revision="cm-11.0" />
<remove-project name="CyanogenMod/android_packages_apps_Dialer" />
<project name="cristianomatos/android_packages_apps_Dialer" path="packages/apps/Dialer" remote="github" revision="cm-11" />
<remove-project name="CyanogenMod/android_packages_apps_InCallUI" />
<project name="cristianomatos/android_packages_apps_InCallUI" path="packages/apps/InCallUI" remote="github" revision="cm-11" />
<remove-project name="CyanogenMod/android_packages_services_Telephony" />
<project name="cristianomatos/android_packages_services_Telephony" path="packages/services/Telephony" remote="github" revision="cm-11" />
<remove-project name="CyanogenMod/android_frameworks_base" />
<project name="cristianomatos/android_frameworks_base" path="frameworks/base" remote="github" revision="cm-11" />
<remove-project name="CyanogenMod/android_packages_apps_Settings" />
<project name="cristianomatos/android_packages_apps_Settings" path="packages/apps/Settings" remote="github" revision="cm-11" />
</manifest>
Download!
Scaricherà oltre 10gb di dati, andate a farvi una birra al bar!
Download dei prebuilts:
codice:
~/cyanogenmod/vendor/cm/get-prebuilts
3) COMPILATE LA ROM:
codice:
. build/envsetup.sh && brunch maguro
Ci metterà parecchio tempo, in base alla potenza del pc.
Se tutto va bene avrete lo zip della rom in cyanogenmod/out/target/product/maguro/cm-11-XXXXXXXXX-UNOFFICIAL-maguro.zip 
4) Installate la rom sul telefono!
-------------------------------------------------------------------------------------------------------------
Qualche suggerimento:
Se vuoi scaricare gli ultimi cambimenti della crdroid/cyanogenmod apri il terminale e dai:
codice:
cd cyanogenmod
repo sync
Se qualcosa non ha funzionato e vuoi riniziare la build dai:
Poi:
codice:
. build/envsetup.sh && brunch maguro
Per riniziare a compilare.