編譯Android 4.4源代碼並燒錄到Nexus4


環境准備:
基本環境:ubuntu-12.04-desktop-64bit(裸機或者Windows下虛擬機安裝均可,14.04也可以)
其他要求:空閑磁盤空間100G以上,代碼部分接近10G,內存越大越好。
==========================================
第一部分:環境初始化
==========================================
1. 安裝Oracle JDK
注意:如果編譯Android4.4不能用OpenJDK,必須用Oracle JDK1.6,1.7目前是不支持的。
2. 安裝必備工具軟件
$sudo apt-get install git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dri:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386 dpkg-dev
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so  
3. 配置ccache
安裝ccache並將export USE_CCACHE=1加入到~/.bashrc中。
 
==========================================
第二部分:源代碼下載
========================================== 
利用已經下載好的源代碼進行編譯,省去了源代碼的下載的繁復過程
下載地址:115網盤 http://115.com/lb/5lbcb7joklq
 
==========================================
第三部分:源代碼編譯 
==========================================
1.  設置環境變量
   export ANDROID_HOME=~/android4.4
   export PATH=$PATH:${ANDROID_HOME}/out/host/linux-x86/bin
   export ANDROID_PRODUCT_OUT=${ANDROID_HOME}/out/target/product/mako
 
2.下載必須的源碼刷手機的驅動文件並配置
  1. 進 https://developers.google.com/android/nexus/drivers 根據手機型號選對應的驅動包
  2. 下載三個驅動包: broadcom-mako-krt16s-f54c9ff9.tgz, lge-mako-krt16s-23ef7d53.tgz, qcom-mako-krt16s-cc4bd932.tgz 
  3. 解壓到源碼根目錄(也就是~/android4.4)
  4. 運行三個解壓后的sh文件, 在根目錄下會多出vendor目錄, 這就是硬件驅動目錄
3. 開始編譯
  1. 導入編譯android環境變量: source build/envsetup.sh
  2. 設置編譯緩存大小: prebuilts/misc/linux-x86/ccache/ccache -M 50G
  3. 選擇編譯終端類型: lunch full_mako-userdebug
  4. 編譯源碼: make -j4
==========================================
第四部分:編譯好的系統刷入手機
==========================================
1. 查看out目錄
查看是否生成 system.img boot.img recovery.img userdata.img等需要的文件
 
2.刷入手機
進入 system.img所在目錄
1) 進入刷機模式: adb reboot bootloader

fastboot format cache

fastboot format userdata

2) 刷image進手機:sudo fastboot -w flashall  

或者分別刷入 fastboot flash recovery recovery.img

          fastboot flash  boot boot.img

       fastboot flash system system.img

       fastboot flash userdata userdata.img 進入手機

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM