Voici les étapes à suivre pour compiler un noyau pour la version Gingerbread de CyanogenMod pour le HTC Desire sous une Ubuntu 10.04 toute fraiche.
Prérequis
Avoir installé les repos pour CyanogenMod comme ici.
export CCOMPILER=${HOME}/android/system/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi-
Créer le répertoire
mkdir -p ~/android/kernel
Installer le dépôt
cd ~/android/kernel
git clone git://github.com/CyanogenMod/cm-kernel.git -b android-msm-2.6.37
cd cm-kernel
Configuration de la compilation du noyau
Copier du téléphone le fichier /proc/config.gz et le coller dans ~/android/kernel/cm-kernel/config.gz puis :
cat config.gz | gunzip > .config
make ARCH=arm CROSS_COMPILE=$CCOMPILER oldconfig
Compiler le noyau
Compilation
make ARCH=arm CROSS_COMPILE=$CCOMPILER -j`grep 'processor' /proc/cpuinfo | wc -l`
Récupérer les fichiers
Le fichier du noyau se situe là :
~/android/kernel/cm-kernel/arch/arm/boot/zImage
Le module pour le wifi ici :
~/android/kernel/cm-kernel/drivers/net/wireless/bcm4329/bcm4329.ko
Installation
Intégrer à CyanogenMod
cp ~/android/kernel/cm-kernel/arch/arm/boot/zImage ~/android/system/device/htc/bravo/kernel
cp ~/android/kernel/cm-kernel/drivers/net/wireless/bcm4329/bcm4329.ko ~/android/system/device/htc/bravo/bcm4329.ko
Puis recompiler CyanogenMod
Créer un update.zip
Utiliser la méthode de Koush