Originariamente inviato da
morfes
Salve a tutti, sono riuscito a compilare con la toolchain linaro 4.7.4 sia il kernel 3.0.72 che l'intera rom dai sorgenti Google Aosp del Samsung Galaxy Nexus.
Kernel + ramdisk:
Kernel updated to: 3.0.72 (compiled with Linaro GCC 4.7.4-2013.06.26)
Compressed zImage – LZO
Disabled ro.adb.secure
Available I/O Schedulers: Deadline – CFQ – No-op
Available CPUFreq govenor: performance – powersave – userspace – ondemand – interactive – conservative – hotplug
Enabled CIFS support
Enabled NFS support
Enabled TUN support
Fix shell adb in standard GNU/Linux
Enabled Local Version
Enabled /proc/config.gz
Enabled extract config zImage
System:
AOSP Jelly Bean 4.3 build JWR66V (compiled with Linaro GCC 4.7.4-2013.06.26)
Installato busybox
La rom è deodexed, non ha il root, mancano anche le google apps, se volete potete installarle tramite la recovery clockworkmod, in basso i link dei download.
Guida per l'installazione:
Installate la recovery
Clockworkmod
Scaricate la rom e copiate lo zip nella sdcard
Reboot in recovery, fate wipe data/factory restore e flashate.
Download
-
Galaxy-Nexus-4.3-linaro-deodexed
-
Root SuperUser 1.51
-
Gapps-jb-4.3
La rom sembra molto fluida e veloce, per aumentare la velocità del luncher, andate in Impostazioni - abilitate Opzioni sviluppatore - selezionate scala animazione finestra, transizione e animatore a 0,5x. Presto pubblicherò la rom versione odexed.
Ringraziamenti
- Google Android Source
- Team Progetto Linaro
- EstebanSannin
Se la mia rom vi piace ringraziatemi con una
Donazione
Guida per la compilazione con i sorgenti linaro
Penso che questa guida sarà utile solo a pochi utenti, ma per la felicità di Nemis la pubblico.
- Dovete avere installato ubuntu 10.4 a 64 bit ma la compilazione va anche con ubuntu 13.04 a 64 bit testato da me e la sun java 6
- Scaricate i sorgenti aosp android 4.3, nel sito
Android Developers spiega come fare
- Scaricate i sorgenti kernel del Galaxy Nexus:
codice:
git clone https://android.googlesource.com/kernel/omap.git
cd omap
git branch -a (questo comando vi elencherà le varie versioni del kernel)
master
* remotes/origin/android-omap-tuna-3.0-jb-mr2
remotes/origin/HEAD -> origin/master
remotes/origin/android-omap-3.0
remotes/origin/android-omap-panda-3.0
remotes/origin/android-omap-steelhead-3.0-ics-aah
remotes/origin/android-omap-tuna-3.0
remotes/origin/android-omap-tuna-3.0-ics-mr1
remotes/origin/android-omap-tuna-3.0-jb-mr0
remotes/origin/android-omap-tuna-3.0-jb-mr1
remotes/origin/android-omap-tuna-3.0-jb-mr1.1
remotes/origin/android-omap-tuna-3.0-jb-mr2
remotes/origin/android-omap-tuna-3.0-jb-pre1
remotes/origin/android-omap-tuna-3.0-mr0
remotes/origin/android-omap-tuna-3.0-mr0.1
remotes/origin/glass-omap-xrr02
remotes/origin/glass-omap-xrr35
remotes/origin/glass-omap-xrr64b
remotes/origin/glass-omap-xrr88
remotes/origin/linux-omap-3.0
remotes/origin/master
remotes/origin/sph-l700-fh05
git checkout remotes/origin/android-omap-tuna-3.0-jb-mr2 (scegliete l'ultima versione aggiornata del kernel 3.0.72 jelly bean)
- Scaricate la toolchain linaro 4.7-2013.07 (4.7.4) da
xda
- Settate le variabili per la compilazione del kernel:
codice:
export ARCH=arm
export CROSS_COMPILE=/home/utente/Scrivania/Galaxy_Nexus/Toolchain-Linaro/arm-linux-gnueabi-linaro_4.7.4/bin/arm-unknown-linux-gnueabi-
make tuna_defconfig (questo comando vi carica il config del gnexus)
make menuconfig (questo comando tramite una interfaccia grafica potete selezionare e caricare i vari moduli nel kernel e modificare la configurazione)
make (inizia la compilazione)
- Per compilare i sorgenti google aosp, dobbiamo scaricare questa toolchain linaro 4.7.4:
http://snapshots.linaro.org/android/...ux-x86.tar.bz2
- Estraiamo e la copiamo nella cartella:
sorgenti-aosp/prebuilts/gcc/linux-x86/arm/ in questa cartella ci sono le toolchain gcc di google, io per non confondermi con le altre cartelle lo chiamata
arm-linaro-4.7 , ora non ci resta che modificare il file
TARGET_linux-arm.mk che si trova nella cartella
sorgenti-aosp/build/core/combo e andiamo a modificare il nome della cartella sul TARGET_TOOLCHAIN_ROOT,
da cosi:
codice:
# You can set TARGET_TOOLS_PREFIX to get gcc from somewhere else
ifeq ($(strip $(TARGET_TOOLS_PREFIX)),)
TARGET_TOOLCHAIN_ROOT := prebuilts/gcc/$(HOST_PREBUILT_TAG)/arm/arm-linux-androideabi-$(TARGET_GCC_VERSION)
TARGET_TOOLS_PREFIX := $(TARGET_TOOLCHAIN_ROOT)/bin/arm-linux-androideabi-
endif
a cosi:
codice:
# You can set TARGET_TOOLS_PREFIX to get gcc from somewhere else
ifeq ($(strip $(TARGET_TOOLS_PREFIX)),)
TARGET_TOOLCHAIN_ROOT := prebuilts/gcc/$(HOST_PREBUILT_TAG)/arm/arm-linaro-$(TARGET_GCC_VERSION)
TARGET_TOOLS_PREFIX := $(TARGET_TOOLCHAIN_ROOT)/bin/arm-linux-androideabi-
endif
Fatto questo potete iniziare a compilare seguendo le guide del sito android source
Ah dimenticavo prima che finisce la compilazione dovete copiare nella system che si crea nella cartella out le blob proprietary del Galaxy Nexus che potete prendere dalla vostra rom stock 4.3, se no la rom non si avvia.