请选择 进入手机版 | 继续访问电脑版

Android4.4系统编译(二)之编译与刷机

本帖最后由 Darkbright.Liu 于 2019-11-17 14:02 编辑

0x00 准备工作
下载Linux版JDK6:
https://www.oracle.com/java/technologies/javase-java-archive-javase6-downloads.html#jdk-6u21-oth-JPR
下载硬件相关驱动(注意对应系统版本和机器型号):
https://developers.google.com/android/drivers
以Nexus 5为例:
0.png


0x01 安装相关软件包
1.安装配置jdk6:
       #./jdk-6u29-linux-x64.bin
       #vim /root/.bashrc             //配置环境变量
在文件末尾添加:
export JAVA_HOME=/root/jdk1.6.0_29
export JRE_HOME=/root/jdk1.6.0_29/jre
exportCLASSPATH=.JAVA_HOME/libJRE_HOME/libCLASSPATH
exportPATH=$JAVA_HOME/binJRE_HOME/binPATH
       #source ~/.bashrc       //更新配置
2.安装其他工具软件:
    # apt-getinstall uboot-mkimage
    # apt-getinstall \
     git gnupgflex bison gperf build-essential \
     zip curllibc6-dev libncurses5-dev x11proto-core-dev \
    libx11-dev:i386 libreadline6-dev:i386 \
    libgl1-mesa-glx-lts-quantal:i386 libgl1-mesa-dev-lts-quantal \
     g++-multilibmingw32 tofrodos lib32ncurses5-dev \
    python-markdown libswitch-perl libxml2-utils xsltproc zlib1g-dev:i386
3.修改软链接、减低GCC版本:
    #ln  -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1  /usr/lib/i386-linux-gnu/libGL.so
    #apt-get  install gcc-4.4 g++-4.4  g++-4.4-multilib
    #mv  -f /usr/bin/gcc  /usr/bin/bak_gcc
    #mv  -f /usr/bin/g++  /usr/bin/bak_g++
    #ln  -s /usr/bin/gcc-4.4  /usr/bin/gcc
    #ln  -s /usr/bin/g++-4.4  /usr/bin/g++
    #gcc -v 11.png

0x02下载Android4.4源码
安装git:

#add-apt-repository ppa:git-core/ppa

# apt-get update

# apt-getinstall git

# git --version
安装curl:
       #apt-get update

# apt-getinstall curl

获取repo文件:
       #curl https://storage.googleapis.com/git-repo-downloads/repo > repo
修改repo文件:(通过清华的服务器下载源码)
8     +        REPO_URL = 'https://aosp.tuna.tsinghua.edu.cn/git-repo'
8     -            REPO_URL ='https://gerrit.googlesource.com/git-repo'
给与repo文件可执行权限:
       #chmod 777 repo
配置git:
       #git config --global user.email "123456.com"
       #git config --global user.name "123456"
下载Android4.4源码:
# ~/repo init -uhttps://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-4.4_r1.2
# ~/repo sync -j8
1.png
下载完成之后删除 .repo 文件夹:
       #rm -rf .repo/

0x03 导入硬件相关文件
将提前下载的硬件驱动文件拷贝至Android源码根目录下并安装:
Broadcom:
2.png 3.png

Lge:
4.png 5.png

Qcom:
6.png 7.png


0x04 编译Android系统

1、配置编译环境:(导出编译所需要的命令)
       #source build/envsetup.sh
8.png
2、选择一个产品:(Nexus 5产品代号为hammerhead)
       #lunch
9.png
3、编译系统:
       #make -j8     (8表示启用8个线程进行编译)
10.png
第一次编译所需要的时间比较长,耐心等待即可。
12.png
13.png

0x05 刷机
手机USB调试接入,执行:
       #adb  devices
       #adb  reboot bootloader
       #fastboot  devices
       #fastboot  -w flashall
14.png
15.png





标签: 暂无标签
Darkbright.Liu

写了 7 篇文章,拥有财富 129,被 2 人关注

转播转播 分享分享 分享淘帖
回复

使用道具

胖虎 注册会员 | 发表于 2019-11-19 20:25:06
优秀 膜拜大佬
回复

使用道具

Darkbright.Liu 注册会员 | 发表于 2019-12-10 16:41:59
论坛排版格式原因会导致缺少个别标点,原文档放在QQ群里面了
回复

使用道具

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

意见
反馈