Ubuntu(16.0.4)上编译android8.0源码(资料最全版本)

本文档详细介绍了在Ubuntu 16.0.4上编译Android 8.0源码的全过程,包括系统和软件的准备、Repo工具的安装、源码下载、环境配置、SDK和模块编译、解决编译过程中遇到的各种问题,如Python版本、内存不足等。通过这个指南,读者可以学习到完整的Android系统源码编译流程。
摘要由CSDN通过智能技术生成

前言:

首先,安装linux系统,我们需要一个虚拟机,然后再把linux系统安装到虚拟机上。才完成一个能正常运行和工作的环境。
为什么选择ubuntu版本的linux系统?
总所周知,Linux有非常多的发行版本,从性质上划分,大体分为由商业公司维护的商业版本与由开源社区维护的免费发行版本。
不同Linux版本系统选择:
Debian:一般来说Debian作为适合于服务器的操作系统,它比Ubuntu要稳定得多。开源资料少

Ubuntu:Ubuntu是一个以桌面应用为主的Linux操作系统 (因此linux系统,是支持桌面操作的)

它的图形界面固然漂亮,但这也决定了它最佳的应用领域是桌面操作系统而非服务器操作系统。最受欢迎,适合桌面操作

CentOS:你会发现非常多的商业公司部署在生产环境上的服务器都是使用的CentOS系统。主要用在公司服务器上。

**总结:**如果装在自己电脑中而不是服务器的话,就要选择桌面操作的ubuntu系统。如果安装到服务器,需要选择centos版本的linux系统

必备软件

Repo:android源码同步工具
Ubuntu系统:16.0.4,默认安装了Python2.7和3.5
python:版本大于3.6及以上,注意:2.7版本的python一定要保留,源码编译需要用2.7版本的python
android系统:自己选择android版本 android-8.1.0_r1 参考附录资料
jack-server:源码编译过程会自动启动jack-server服务器。手动启动(jack-admin start-server)

配置文件:
1,/etc/profile :全局配置文件路径,配置了openjdk路径,python路径
2, ~/.bashrc 同上(当前用户配置文件路径,配置全局,就不用配置当前用户了) export REPO_URL=‘https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/’
3,.repo/manifests.git/config :android源码下载路径配置文件,用于提高repo sync 源码同步速度
4, /etc/apt/sources.list : 可以添加一些国内镜像地址 ,用于提高apt-get install 安装软件包的速度
5,etc/hosts :域名映射地址。暂时不需要改动
jack-server服务器
sourcecode/prebuilts/sdk/tools/jack-admin文件 :配置jack-server
git配置文件:
~/.gitconfig 里面就是配置过的git 邮箱和用户名信息
**

硬件:

**
虚拟机内存:运行内存最好超过8G(13G左右,条件可以16G都行),磁盘内存至少250G,然后分配给jack-server内存8G左右用于编译android 系统,13G考虑因素:正常打开虚拟机,保证虚拟机运行内存大概是2G左右。然后分配8G给jack-server编译。
增加jack-server内存:
修改源码目录下的 prebuild/sdk/tools/jack-admin文件

JACK_SERVER_COMMAND=“java -Djava.io.tmpdir=$TMPDIR $JACK_SERVER_VM_ARGUMENTS -cp $LAUNCHER_JAR $LAUNCHER_NAME” # 改成下面这行,增加java堆大小。

JACK_SERVER_COMMAND=“java -Djava.io.tmpdir=$TMPDIR $JACK_SERVER_VM_ARGUMENTS -Xmx8000M -cp $LAUNCHER_JAR $LAUNCHER_NAME”
4096编译失败了,改成7000M试下,内存大小可以自己调整

正式篇章

ubuntu系统Android源码编译流程
1,安装虚拟机 (本地虚拟机文件:G:\VMware-workstation-full-12.1.0-3272444.exe)
2,在虚拟机安装ubuntu系统(16.0.4,默认安装了Python2.7和3.5) 路径:G:\ubuntu-16.04.6-desktop-amd64.iso
3,在系统上安装OpenJDK环境 (源码编译:OpenJDK支持,但JDK不支持)
首先移除ubuntu自带的openJDK,命令:sudo apt-get purge openjdk*
如果ubuntu系统版本是Ubuntu16.0.4 及以上,则可以直接命令安装:
sudo apt-get update
sudo apt-get install openjdk-8-jdk
安装后,输入命令java -version 查看是否安装成功。
然后配置环境变量:1,先确认安装的OpenJDK路径(sudo update-alternatives --config java)2;确认环境变量是否配置。如果是全局环境变量:vim /etc/profile; 配置完成后,source /etc/profile 使环境变量生效
4,安装各种包
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
5,安装repo 和下载Android源码
安装repo,参考下面的 linux–Repo的介绍与安装和Android源码下载
源码下载: 需要借助repo工具,google用repo工具实现git类似的功能,具体如下࿱

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值