Android10源码的编译环境搭建

 

编译环境

Windows10,VMware15,Ubuntu20.04.1, 虚拟环境

笔记本,16G+1T, CPU 16 核心,I7八代(给虚拟机分配了300G的硬盘空间,8G内存,8处理器)

 

编译依赖库和工具下载

1、下载 git :

sudo apt-get install git
  • 下载git时,可能会报错,下载不了。首先,找到Software&Updates这个选项
  • watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzI5MTk0NjE1,size_16,color_FFFFFF,t_70

    watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzI5MTk0NjE1,size_16,color_FFFFFF,t_70

    这样应该就可以下载了。

2、安装jdk

sudo apt-get install openjdk-8-jdk

3、配置PATH环境变量

mkdir ~/bin
echo "PATH=~/bin:\$PATH" >> ~/.bashrc
source ~/.bashrc

4、安装curl库:

sudo apt-get install curl

5、下载repo并设置权限:

curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo > ~/bin/repo
chmod a+x ~/bin/repo

6、安装python :

sudo apt-get install python

下载源码

1、建立工程目录: 

mkdir source
cd source
mkdir android10
cd android10

2、使用tanna源

export REPO_URL='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/'

3、设置账户:

git config --global user.email "xxxxxxx@gmail.com"
git config --global user.name "xxxxx"

4、初始化仓库:

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest

5、指定Android版本并初始化:

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-10.0.0_r10

6、同步代码源

repo sync

漫长的等待后源码下载完成,若是中途卡在某个环节很久可以ctrl c/ctrl z中断,重新repo sync。

 

源码编译

1、安装依赖

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
sudo apt-get install libssl-dev

(1)当安装 sudo apt-get install libesd0-dev可能会报"Unable to locate package libesd0-dev"这个错,

解决办法:

sudo gedit /etc/apt/sources.list  //在行尾添加如下两行的内容
deb http://us.archive.ubuntu.com/ubuntu/ xenial main universe
deb-src http://us.archive.ubuntu.com/ubuntu/ xenial main universe

更新软件源并重新安装:

sudo apt-get update && sudo apt-get install libesd0-dev

(2)当安装sudo apt-get install lib32ncurses5-dev可能报"lib32ncurses5-dev : Depends: libncurses5-dev (= 6.0+20160213-1ubuntu1)   Unable to correct problems, you have held broken packages."

解决办法:

sudo apt install aptitude

aptitude install lib32ncurses5-dev   //需要切换到root权限,然后会提示你是否保持当前版本,选n,再然后提示是否降级,选y

(给root用户设置密码: 命令:sudo passwd root 输入密码,并确认密码。

重新输入命令:su root 然后输入密码: 发现可以切换到root权限了,使用su xxx命令,切换到普通用户)

 

2、开始编译, launch后选择要编译的工程版本,输入序列号

source build/envsetup.sh
lunch 21  (X86版本)
make -j8

其中j8表示开8个线程来参与编译源码,这个数字一般满足cpu内核数*2,可以通过cat /proc/cpuinfo来查看相关的cpu信息

 

3、编译成功后(按上面操作一次性编译成功了)

source build/envsetup.sh   //若执行过,可以省略
lunch 21  (X86版本)           //若执行过,可以省略

emulator  //启动模拟器

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我是大咸鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值