Tema: [TUTORIAL] Como compilar un kernel
Ver Mensaje Individual
  #2  
Viejo 01/04/15, 10:14:27
Avatar de alexret
alexret
Usuario invitado
Mensajes: n/a
 
Mensajes: n/a
Mencionado: comentarios
Tagged: hilos
CREACIÓN BOOT.IMG

Una vez que tengamos el zImage (está en arch/arm/boot )nos descargamos las mkbootin tools https://github.com/xiaolu/mkbootimg_tools
Las descomprimimos y cogemos un boot.img* de una rom Miui (solo he probado con esta rom) y lo metemos en la carpeta de las mkbooting_tools.

*NOTA: boot.img = kernel

Abrimos un terminal y hacemos lo siguiente.

Cita:
./mkboot boot.img kernel

El kernel es la carpeta donde se van a descomprimir los archivos del boot.img.

Bien, si todo ha salido bien nos saldrá algo como esto
Cita:
Unpack & decompress boot.img to kernel
kernel : /home/xiaolu/work/initramfs/s4/e330s/kernel/zImage
ramdisk : /home/xiaolu/work/initramfs/s4/e330s/kernel/ramdisk.gz
page_size : 2048
base_addr : 0x00000000
kernel size : 6911360
kernel_addr : 0x00008000
ramdisk_size : 2685222
ramdisk_addr : 0x02000000
second_size : 0
second_addr : 0x00f00000
dtb_size : 1427456
tags_addr : 0x01e00000
cmdline : console=null androidboot.hardware=qcom user_debug=31 maxcpus=2 msm_rtb.filter=0x3F
Unpack completed.
Ahora vamos a arch/arm/boot y cogemos el zImage (OJO, EL zImage NO EL zImage-dtb).
Vamos a la carpeta de las mkbooting_tools y vamos a la carpeta kernel.
Veremos que nos salens varios cosas, veremos un zImage creado del boot.img que hemos desempaquetado antes, lo borramos y ponemos el que hemos copiado anteriormente.
Una vez hecho esto, abrimos un terminal y nos dirigiremos a la ruta de mkbooting_tools y haremos lo siguiente para empaquetar nuestro kernel

Cita:
./mkboot kernel boot.img
Y nos saldrá algo como esto si todo ha salido bien
Cita:
mkbootimg from ksuamg5/img_info.
kernel : /home/xiaolu/work/initramfs/s4/e330s/ksuamg5/zImage
ramdisk : /home/xiaolu/work/initramfs/s4/e330s/ksuamg5/new_ramdisk.gz
page_size :
base_addr : 0x00000000
kernel size : 6911360
kernel_addr : 0x00008000
ramdisk_size : 2685222
ramdisk_addr : 0x02000000
second_size :
second_addr :
dtb_size : 1427456
dtb_img : dt.img
tags_addr : 0x01e00000
cmdline : console=null androidboot.hardware=qcom user_debug=31 maxcpus=2 msm_rtb.filter=0x3F
Kernel size: 6911360, new ramdisk size: 3416778, recovery.img: 11759616.
recovery.img has been created.
Bien, pues ya tenemos nuestro kernel listo para probarlo.

En el siguiente paso os explicaré como flashearlo y os daré las instrucciones para meterlo en un zip

Última edición por alexret Día 08/04/15 a las 22:07:17
Responder Con Cita