Android AOSP 6,android驱动开发与移植实战详解

这还不够,因为很有可能出错跳出来了,我们需要一个脚本,在出问题的情况下再次执行repo sync,在当前需要下载源码的目录下新建down.sh文件,直接使用vi命令即可。

vi down.sh

接下来,在vi编辑器内输入下面这段脚本代码,保存退出。

#!/bin/sh
repo sync
while [ $? -ne 0 ]
do
repo sync
done

用这段脚本执行,替换repo sync这条命令。

./down.sh

N个小时过去后,终于下载好了。小水管的笔者下了15个多小时才完成。开始着手搭建源码编译环境。

五、源码编译

对应分支的源码下载好以后,接下来就开始激动人心的编译工作,但编译之前还需要先配置环境。

1.搭建编译环境

笔者环境

  • Ubuntu 16.04 LTS
  • Android android-6.0.1_r72分支源码
  • Open JDK 7

上面的两者已经具备了,那么还需要安装Open JDK 7,注意是Open JDK,并非甲骨文的Oracle JDK。

这部分内容引自csdn博主梧桐那时雨。

(1) 更换软件源

为了更快的安装软件,我们需要更换软件源为国内的软件源,这里推荐使用Ubuntu官方指定的国内软件源阿里云,具体方法是:

sudo gedit /etc/apt/sources.list

在文件最前面加入下面代码:

deb http://mirrors.aliyun.com/ubuntu/ quantal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ quantal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ quantal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ quantal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ quantal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ quantal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ quantal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ quantal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ quantal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ quantal-backports main restricted universe multiverse

(2) 安装依赖

sudo apt-get install -y git flex bison gperf build-essential libncurses5-dev:i386
sudo apt-get install libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev g+±multilib
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 lib32z-dev ccache
sudo apt-get install libgl1-mesa-dev libxml2-utils xsltproc unzip m4

Ubuntu 16.04请务必使用上面的依赖,Ubuntu 16.04需要的依赖和Ubuntu 14.04所需要的依赖是不同的。

(3) 安装open JDK7

由于Ubuntu 16.04没有OpenJDK7的源,因此在16.04上安装OpenJDK7需要执行下面的命令:

sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-7-jdk

配置OpenJDK.打开/etc/profile文件:

sudo gedit /etc/profile

在末尾追加下面代码:

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
export JRE_HOME= J A V A H O M E /

你可能感兴趣的:(程序员,架构,移动开发,android)