因需要创建有系统签名的app所以自行在钻研源码编译,走了很多坑,在这边完善一下整个流程,希望对读者有用
1.下载jdk(因为编译需要所以下载的是openJdk1.8)
sudo apt-get install openjdk-8-jdk
一般不会出什么问题,java -version就可以查看是否安装成功
2.安装要用到的各种插件
sudo apt-get install vim
sudo apt-get install libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev g+±multilib
sudo apt-get install -y git flex bison gperf build-essential libncurses5-dev:i386
sudo apt-get install tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386
sudo apt-get install dpkg-dev libsdl1.2-dev libesd0-dev
sudo apt-get install git-core gnupg flex bison gperf build-essential
sudo apt-get install zip curl zlib1g-dev gcc-multilib g+±multilib
sudo apt-get install libc6-dev-i386
sudo apt-get install lib32ncurses5-dev x11proto-core-dev libx11-dev
sudo apt-get install libgl1-mesa-dev libxml2-utils xsltproc unzip m4
sudo apt-get install lib32z-dev ccache
下载软件的时候可能会遇到解析不了域名的情况修改dns文件加入
vim /etc/resolv.conf
nameserver 202.96.134.133
nameserver 8.8.8.8
保存即可,默认是没有配置的
3.配置git
git config --global user.name “你的github用户名”
git config --global user.email “你的github邮箱地址”
4.下载repo工具
mkdir ~/bin
PATH=~/bin
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
这样就已经完成了repo的下载
cd ~/bin
vim repo
因为里面默认配置是REPO_URL = ‘https://gerrit.googlesource.com/git-repo’
可能会造成下载失败,所以这边改为REPO_URL = ‘https://gerrit-googlesource.proxy.ustclug.org/git-repo’
这个亲测有效而且速度很快
5.创建要放Android源码的文件夹
mkdir android
6.初始化源码仓库指定版本
repo init -u git://mirrors.ustc.edu.cn/aosp/platform/manifest -b android-8.0.0_r9
7.同步代码树
repo sync
鉴于网络原因或者各种延迟会出现卡顿或者不动,不过遇到的话就再次输入该命令即可,
我是百兆宽带下载用了2个多小时,这次很顺利,之前都是在研究
以上就是编译前的准备
现在开始进入源码编译
1.编译前的初始化命令
source build/envsetup.sh
不论mm也好还是编译也好都需要先进行这一步
2.选择编译目标平台
lunch 命令介绍:
lunch命令是envsetup.sh里定义的一个命令,用来让用户选择编译项,来定义Product和编译过程中用到的全局变量
这里就不细说了,自行百度哈
lunch 2
3.编译
make -j8
这边的8指的是用几个线程去跑,我这边用了8反正可以接受,你们的话自行调试
4.等待完成
如果没问题的话,等4个小时左右就可以完成 了,ls下就会出现全部文件