Ubuntu运行环境下Android10源码下载和编译

首先感谢:

Atomic_space分享的编译过程记录:

链接:win10最新下载编译Android源码的简易方法分享(已亲测)_windows 下载编译 android源码-优快云博客

本人按照这个顺序,成功下载和编译了Android10源码,在此过程中,有一些不同之处,本文进行一些说明。

过程中:

1.(7~10)下载和安装Ubuntu 20.04可以直接使用命令行,更方便。

先安装wsl
wsl --install

会显示很多Ubuntu的版本

使用wsl下载安装Ubuntu
wsl --install -d <Ubuntu-20.04>

2.在拉取android10源码的时候,git命令不起作用。

repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest -b android-10.0.0_r1

repo sync -j12

请使用:

repo运行
1、mkdir ~/bin
2、PATH=~/bin:$PATH
3、git clone https://gerrit-googlesource.lug.ustc.edu.cn/git-repo
4、cd git-repo/
5、cp repo ~/bin/
6、chmod a+x ~/bin/repo
7、mkdir workspace
8、cd workspace/

* 注意将workspace替换为你本地新建的路径,在此之后再执行上面的两句命令。

3.在编译的时候,尽量不要太多线程,我本地使用:make -j4

编译中:报错

1.缺少一些工具,比如:unzip、gedit、Jdk,报错:

/bin/bash: unzip: command not found

解决办法:用命令安装即可,网上搜一下

安装gedit
sudo apt-get install gedit

安装java
java -version
sudo apt install openjdk-11-jre-headless

2.make: *** [build/make/core/main.mk:21: run_soong_ui] Error 1    exit status 137

解决办法:

# 将现有swap移动到主内存,可能需要几分钟
sudo swapoff -a
 
# 创建新的swap文件,bs×count=最后生成的swap大小,我本地设置32G
sudo dd if=/dev/zero of=/swapfile bs=1G count=32
 
# 设置权限
sudo chmod 0600 /swapfile
 
# 设置swap
sudo mkswap /swapfile
 
# 打开swap
sudo swapon /swapfile
 
# 检查设置是否有效
grep Swap /proc/meminfo # 或者htop看一下
 
# 设置永久有效,这里会提示安装gedit,其实后面才知道用nano命令也可以
sudo gedit /etc/fstab
# 在弹出的页面末尾行加上 
/swapfile swap swap sw 0 0

3.Exception in thread "main" java.lang.OutOfMemoryError: Java heap space

java虚拟机内存不足

解决办法:
a.临时调整
declare -x _JAVA_OPTIONS="-Xmx4096m"
declare -x JACK_SERVER_VM_ARGUMENTS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx4096m"
b.设置java虚拟机环境变量堆大小,永久保存
nano ~/.bashrc
export _JAVA_OPTIONS="-Xmx4096m"
source ~/.bashrc

4./usr/bin/python: bad interpreter: No such file or directory

编译到最后,如果你本地安装的python是3.x版本,还需要安装2.x版本。在mk_combined_img.py这个文件里,要引用2.x版本。

解决办法:

sudo apt update
sudo apt install python2-minimal
sudo gedit device/generic/goldfish/tools/mk_combined_img.py
头部文件路径 修改成python2

以上

共同学习

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值