AOSP编译
1. 配环境
1.1 设置软件更新源为国内地址
1.2 开始安装工具
//ubuntu 16.04
sudo apt-get install uuid uuid-dev zlib1g-dev liblz-dev liblzo2-2 liblzo2-dev lzop git-core curl u-boot-tools mtd-utils android-tools-fsutils openjdk-8-jdk device-tree-compiler gdisk m4 libxml2-utils lib32ncurses5 lib32stdc++6 liblz4-tool python-crypto python-wand libssl-dev lib32z1 libswitch-perl libffi-dev gnupg flex bison gperf build-essential zip gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev libz-dev ccache libgl1-mesa-dev xsltproc unzip repo -y
//ubuntu 20.04
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip libncurses* -y
1.3 设置git config
git config --global user.name "userName" //你的用户名
git config --global user.email "email address" //你的邮箱地址
git config -l //确认一下设置的是否正确
1.4 配置.ssh
//生成.ssh文件,敲完这个命令之后,一路回车就好了
ssh-keygen -t rsa -C 邮箱
//添加私钥
eval "$(ssh-agent -s)"
ssh-add
//配置ssh
sudo gedit /etc/ssh/ssh_config 添加 HostKeyAlgorithms ssh-rsa
echo PubkeyAcceptedKeyTypes +ssh-rsa >> ~/.ssh/config
1.5 扩展交换分区
为了避免内存不足导致编译失败,需要扩展交换分区
//停用交换文件
sudo swapoff /swapfile
//删除文件
sudo rm /swapfile
//新建swap空间,以20G为例
sudo fallocate -l 20G /swapfile
//设置文件权限
sudo chmod 600 /swapfile
//挂载
sudo mkswap /swapfile
//激活启用
sudo swapon /swapfile
//打开配置文件
sudo vim /etc/fstab
//在最后一行插入
/swapfile swap swap defaults 0 0
2. 下源码
2.1 解决谷歌地址访问问题
打开配置文件
sudo gedit ~/.bashrc
添加以下内容
export
sudo gedit /usr/bin/repo 修改 REPO_URL 为 'https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/'
2.2 同步源码
我选择的是android-9.0.0_r61源码,其他版本可以查看版本链接
//新建源码下载文件夹
mkdir aosp
//进入文件夹
cd aosp
//初始化
repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest -b android-9.0.0_r61
//下载
repo sync
3. 编译
source build/envsetup.sh
lunch sdk_x86_64
make