下載、編譯Android4.4 - hammerhead 內核(Kernel)並燒寫驗證

由於google被牆,ubuntu系統不好翻牆,故在windows系統翻牆環境下於https://android.googlesource.com/kernel/msm.git
下載的msm.git-android-msm-hammerhead-3.4-kitkat-mr1.tar.gz內核源碼壓縮包,後拷貝並解壓至ubuntu /android-src/kernel-hammerhead/msm


編譯及燒寫步驟如下:
1 終端進入原Android源碼目錄設置編譯環境:
$ cd android-src/android4.4
$ source build/envsetup.sh
$ lunch 選擇12,編譯hemmerhead
$ export ANDROID_SRC_PATH=/home/author/android-src/android4.4
$ export PATH=$ANDROID_SRC_PATH/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin:$PATH 
$ export ARCH=arm
$ export SUBARCH=arm
$ export CROSS_COMPILE=arm-eabi-
2 切換到kernel內核源碼所在目錄,進行編譯:
$ cd ../kernel-hammerhead/msm
$ make hammerhead_defconfig
$ make 
3 終端輸出:Kernel: arch/arm/boot/zImage-dtb is ready 編譯完成
4 生成新的boot.img並刷至手機:
將剛纔生成的arch/arm/boot目錄下的zImage-dtb拷貝到Android源碼目錄out/target/product/hammerhead下,並改名爲kernel(注意備份原始的kernel文件),再進入Android源碼根目錄
$ cd
$ cd android-src/android4.4
$ mkbootimg --base 0 --pagesize 2048 --kernel_offset 0x00008000 --ramdisk_offset 0x02900000 --second_offset 0x00f00000 --tags_offset 0x02700000 --cmdline 'console=ttyHSL0,115200,n8 androidboot.hardware=hammerhead  user_debug=31 maxcpus=2 msm_watchdog_v2.enable=1' --kernel out/target/product/hammerhead/kernel --ramdisk out/target/product/hammerhead/ramdisk.img -o out/target/product/hammerhead/boot.img
生成boot.img後,連接手機執行燒寫
$ adb reboot bootloader

$ fastboot flash boot boot.img

燒寫完成後啓動手機,在設置->關於手機  的【內核版本】信息中即可看出內核信息爲剛纔編譯的內核。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章