iTOP4412开发板之Android5.1系统编译

本文详细介绍了如何在Ubuntu Kylin 14.04上编译iTOP4412开发板的Android5.1系统,包括设置交叉编译器、安装OpenJDK7、配置依赖、编译uboot、kernel内核以及Android5.1源码的过程。

搭建编译环境是基于 UbuntuKylin 14.04系统(实体机)操作,本文包括uboot编译、内核编译、Android5.1的下载与编译。

1 编译环境准备工作

(1) 交叉编译器配置

在vim .bashrc文件,配置交叉编译工具:(注意:此“arm-2009q3.tar.bz2”工具是4412开发板所提供的,解压后放到配置文件路径即可,若没有arm文件目录,可自行创建 )
打开bashrc文件,配置交叉编译工具:

vim .bashrc

在末尾追加下面代码:

export PATH=$PATH:/usr/local/arm/arm-2009q3/bin

修改为后保存退出,执行更新环境变量命令:

source .bashrc

(2) 安装open JDK7

Android 5.1只能使用OpenJDK7才能编译成功,具体原因读者查资料,这里不在解说。

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

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

sudo gedit /etc/profile

在末尾追加下面代码:

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
export JRE_HOME=${JAVA_HOME}/jre 
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib 
export PATH=${JAVA_HOME}/bin:$PATH

修改完/etc/profile文件需要重启才能生效,但在不重启的情况下,使用下面命令可以使当前bash环境生效:

source /etc/profile

检查OpenJDK:

java -version

配置如下图所示:
在这里插入图片描述

(3)安装依赖文件

注意:若不安装下述依赖环境文件,在编译Android系统的时候会出现错误。笔者曾在编译的时候踩过坑

sudo apt-get install u-boot-tools:i386
sudo apt-get install u-boot-tools
sudo apt-get install git-core gnupg flex bison gperf build-essential
sudo apt-get install zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386
sudo apt-get install lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache
sudo apt-get install libgl1-mesa-dev libxml2-utils xsltproc unzip lzop

2 编译uboot源码

首先创建一个Android 5.1文件夹,用来存放uboot源码,kernel源码以及Android系统源码。注意:下文提到“拷贝“文件时,文件是4412开发板所提供的
将文件“CodeSign4SecureBoot_SCP”、“iTop4412_uboot_20180320.tar.gz”拷贝到Android5.1文件夹中,然后将”iTop4412_uboot_20180320.tar.gz“解压,得到“iTop4412_uboot”文件夹,进入"iTop4412_uboot”文件夹,执行编译脚本命令:

 ./build_uboot.sh SCP_2GDDR     //笔者是用2G的scp核心板

编译完成后显示界面如下:
在这里插入图片描述
编译成功后,会在“/Android5.1/iTop4412_uboot”目录下生成 Uboot镜像“u-boot-iTOP-4412.bin”.如图所示:
在这里插入图片描述

2 kernel内核编译

将文件”iTop4412_Kernel_3.0_for_android_5.1.1_20181016.tar.gz“拷贝到Android5.1文件夹目录下解压后,得到”iTop4412_Kernel_3.0“文件夹,进入”iTop4412_Kernel_3.0“文件夹下,执行编译脚本命令:

cp config_for_android_scp .config

编译完成后显示界面如下:
在这里插入图片描述
编译成功后,会在“/Android5.1/iTop4412_Kernel_3.0/arch/boot”目录下生成内核镜像“zImage”.如图所示:
在这里插入图片描述

4 下载和编译 Android5.1

在Android5.1目录下创建一个新文件来存放Android源码,命令如下:

mkdir Android5.1.1_r9

进入到“Android5.1.1_r9”文件夹,将提前解压好的“repo”文件拷贝进去,然后执行命令如下:

chmod 777 repo   //使用 chmod 命令修改repo文件的权限

初始化android 5.1 的代码,命令如下:

./repo init -u git://mirrors.ustc.edu.cn/aosp/platform/manifest -b android-5.1.1_r9

开始同步下载 android 5.1 源码

./repo sync -j8

注意:-j8 表示电脑系统是 8 核,加快速度。整个下载过程跟网速有关系
把系统源码下载完之后,将文件”itop4412_5.1_path_20180313.tar.gz“拷贝到源码文件中,然后在解压文件,命令如下:
在这里插入图片描述
解压完成后,android 5.1 的源码就支持 itop-4412 平台了。
最终输入编译命令:

./create.sh

经过漫漫长路,编译成功,如图所示:
在这里插入图片描述
编译完成,会在“out/target/product/itop4412”目录下生成 android 镜像
ramdisk-uboot.img,system.img,如下图:
在这里插入图片描述
最后再贴出一张Android源码目录,编译成功后,会多出一个out文件,是存放编译完成之后的代码文件。
在这里插入图片描述
经过一段漫长的路程,终于把编译环节搞定了,接下来就是在4412开发板中烧写系统。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值