In the part 1 I explained how to compile a new kernel, and here’s the explanation how to upload the newly compiled kernel to your device.
- make sure you really have arch/arm/boot/zImage file (about 2MB in case of HTC Desire/Eclair) present after your kernel compilation was over.
- download AnyKernel template by koush and unpack it somewhere
- copy your zImage file to the template /kernel directory, there supposed to be another zImage file there — just replace it
- go back to the template directory, you will see three subdirectories: META-INF, kernel & system
- zip them all (zip -r ../update.zip *)
- sign the update.zip and flash it to your device
- scripts included in the template will unpack your current boot.img, keep ramdisk, but replace the kermel
- enjoy!
Big thanks to Bartosz Ponurkiewicz, who gave me nice advices and warned about common problems on the way!
How to compile kernel — part 1
Recently HTC released the kernel source for HTC Desire. Here’s how to compile the kernel source under Ubuntu:
- download and unpack source code
- install android SDK and NDK
- get kernel config from your device (adb pull /proc/config.gz; gunzip config.gz; mv config .config)
- put .config into the root directory where you unpacked kernel source
- run “make oldconfig”
- optionally, if you plan any changes, run “make menuconfig”
- run “make ARCH=arm CROSS_COMPILE=~/android-ndk-r4/build/prebuilt/linux-x86/arm-eabi-4.4.0/bin/arm-eabi-”, where long and complicated path points to the actual directory where you installed NDK
Wait about 10-20 minutes. You should get the following mesage: