Tiny6410Andoid系统开发指南.docx

上传人:b****2 文档编号:2020722 上传时间:2023-05-02 格式:DOCX 页数:18 大小:2.72MB
下载 相关 举报
Tiny6410Andoid系统开发指南.docx_第1页
第1页 / 共18页
Tiny6410Andoid系统开发指南.docx_第2页
第2页 / 共18页
Tiny6410Andoid系统开发指南.docx_第3页
第3页 / 共18页
Tiny6410Andoid系统开发指南.docx_第4页
第4页 / 共18页
Tiny6410Andoid系统开发指南.docx_第5页
第5页 / 共18页
Tiny6410Andoid系统开发指南.docx_第6页
第6页 / 共18页
Tiny6410Andoid系统开发指南.docx_第7页
第7页 / 共18页
Tiny6410Andoid系统开发指南.docx_第8页
第8页 / 共18页
Tiny6410Andoid系统开发指南.docx_第9页
第9页 / 共18页
Tiny6410Andoid系统开发指南.docx_第10页
第10页 / 共18页
Tiny6410Andoid系统开发指南.docx_第11页
第11页 / 共18页
Tiny6410Andoid系统开发指南.docx_第12页
第12页 / 共18页
Tiny6410Andoid系统开发指南.docx_第13页
第13页 / 共18页
Tiny6410Andoid系统开发指南.docx_第14页
第14页 / 共18页
Tiny6410Andoid系统开发指南.docx_第15页
第15页 / 共18页
Tiny6410Andoid系统开发指南.docx_第16页
第16页 / 共18页
Tiny6410Andoid系统开发指南.docx_第17页
第17页 / 共18页
Tiny6410Andoid系统开发指南.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

Tiny6410Andoid系统开发指南.docx

《Tiny6410Andoid系统开发指南.docx》由会员分享,可在线阅读,更多相关《Tiny6410Andoid系统开发指南.docx(18页珍藏版)》请在冰点文库上搜索。

Tiny6410Andoid系统开发指南.docx

Tiny6410Andoid系统开发指南

 

Tiny6410Android的开发指南

----在Fedora14上搭建Android编译环境

---编译配置Android系统镜像

 

2011年8月2日

一、建立Android编译环境

说明:

在这里主要介绍如何从源代码编译Android系统并生成可烧写的Images

1.1关于开发平台和交叉编译器

Android开发环境与Linux开发环境主要的区别在于,Android2.3.4需要安装Fedora14开发平台才能编译,而其它例如安装交叉编译器和mktools工具链,其方法与Linux基本相同,它所使用的编译器和标准Linux是相同的。

注意:

编译安装Android整个系统至少需要5G的硬盘空间!

首先,下载Vmwareworkstation虚拟机和Fedora14系统镜像。

然后,在windows下安装虚拟机,并在虚拟机上安装上Fedora14系统。

如果对Vmwareworkstation不熟悉,可以上XX上面问问,在这里我就不详细介绍了,至于它的一些使用技巧我会在用到时提到。

至于怎么安装Fedora14也不详细介绍了,只要你安装过Linux系统我相信你一定会安装。

我们的重点是上面我所说的怎样去搭建和配置Android系统镜像,至于这些工具和系统的安装不在详细说明,网上这样的资料很多,想了解的请自己到网上搜索。

当你安装好了,大体就像下图那样:

一开始,可能你的Fedora系统没有连上网,你可以右击连接,不过这个前提是你的虚拟机网络配置是net,这样你才能连接外网。

如图所示:

Fedora14默认不能用root用户登录GUI,这会造成很大的不便,用以下方法可以使得Fedora14可以使用root用户登录:

1.进入普通用户,在终端输入su

2.输入root密码

3.用vi修改两个文件,把authrequiredpam_succeed_if.souser!

=rootquiet注释掉

vi/etc/pam.d/gdm

vi/etc/pam.d/gdm-password

操作如下:

3.1输入a

3.2在authrequiredpam_succeed_if.souser!

=rootquiet前加上#

3.3按一下Esc

3.4输入":

wq"

4.重新登录

因为我们要向虚拟机上面传送文件,所以我们需要把Fedora14上面的smb服务开启,其实VM上面自带一个工具,但是本人还是喜欢smb服务,下面就简单的介绍下:

常见问题和解决办法:

访问某台计算机“无任何网络提供程序接受指定的网络路径”怎么解决?

网络共享只从主IP的网段查找主机,问题就出在目标IP必须与本地主IP同一网段!

这时你需要将Fedora的IP地址设置成和你windows的IP地址是同一个网段的即可。

注意:

为了使Fedora的IP地址和你的IP地址是同一个网段,请使用桥接模式,如下图所示:

此时我的主机IP是192.168..1.166

我的Fedora的IP地址我设置成192.168.1.167

这样我在window下pingFedora能ping通,这就说明网络已经设置好了

接下来就是配置Smb服务了

如下图所示:

配置共享目录:

添加可访问的用户

你可以看不到可供你选择的用户,你需要首先添加用户:

如果都设置好了,重启网络和smb服务即可,在windows下访问了

注意:

请首先关闭Fedora的防火墙!

OK好了,现在可以在windows下像访问windows一样去访问Fedora目录。

1.2.建立交叉编译环境

在Linux平台下,要为开发板编译内核,图形界面Qtopia/Qt4,bootloader,还有其他一些应用程序,均需要交叉编译工具链。

Step1:

将光盘Linux目录中的arm-linux-gcc-4.5.1-v6-vfp-20101103.tgz复制到Fedora14

中的某个目录,如:

/tmp/Linux/。

#cd/tmp/Linux/

#tarxvzfarm-linux-gcc-4.5.1-v6-vfp-20101103.tgz–C/

执行该命令,将把arm-linux-gcc安装到/opt/FriendlyARM/toolschain/4.5.1目录。

说明:

以上的交叉编译器是Tiny6410开发板自带的,所以会解压到以上提到的目录,你也可以在网上下载一个。

Step2:

把编译器路径加入系统环境变量,运行命令

#gedit/root/.bashrc

编辑/root/.bashrc文件,注意“bashrc”前面有一个“.”,修改最后一行为exportPATH=$PATH:

/opt/FriendlyARM/toolschain/4.5.1/bin,注意路径一定要写对,否则将不会有效。

如图:

重新登录系统(不必重启机器,注销下即可),使以上设置生效,在命令行输入arm-linux-gcc–v,会出现如下信息,这说明交叉编译环境已经成功安装。

1.3配置和编译U-boot

说明:

Android所用的U-boot其实和标准Linux是一样的,根据开发板不同的内存(DDRRAM)容量,需要使用不同的U-boot配置项。

1.3.1配置编译支持NAND启动的U-boot

(1)解压安装u-boot源代码

首先创建工作目录/opt/FriendlyARM/Tiny6410/android

在命令行执行

#mkdir–p/opt/FriendlyARM/Tiny6410/android

在工作目录/opt/FriendlyARM/Tiny6410/android中执行:

#cd/opt/FriendlyARM/Tiny6410/android

#tarxvzf/tmp/Android/u-boot-mini6410-20101106.tar.gz

将创建生成u-boot-mini6410目录,里面包含了完整的内核源代码

这里的mini6410和Tiny6410差不多,这是的代码是通用的。

1.3.2配置编译支持NAND启动的U-boot

进入U-boot源代码目录,执行

#cd/opt/FriendlyARM/Tiny6410/linux/u-boot-mini6410

#makemini6410_nand_config-ram256;make

将会在当前目录配置并编译生成支持Nand启动的U-boot.bin

好了看看的确是得到了u-boot.bin文件,在这里为了区分,将其改为u-boot_nand-ram256.bin

1.3.3配置编译支持SD卡启动的U-boot

和上面配置编译支持NAND启动的U-boot一样

只需把最后的make命令修改下即可:

#makemini6410_sd_config-ram256;make

将会在当前目录配置并编译生成支持SD启动的U-boot.bin

重命名得到如下图所示:

1.4配置和编译Linux内核

1.4.1解压安装Android内核源代码

在工作目录/opt/FriendlyARM/Tiny6410/android中执行:

#cd/opt/FriendlyARM/Tiny6410/android

#tarxvzf/tmp/Android/android-kernel-2.6.36-20110517

.tar.gz

将创建生成linux-2.6.36-android目录,里面包含了完整的内核源代码

1.4.2配置和编译Linux内核

Android所用的Linux内核和标准的Linux内核有所不同,但使用的方法和步骤是相似的;如果你对配置Linux内核不熟悉,建议你使用我们提供的缺省内核配置。

我们的板使用的是A70型号的LCD

所以编译时我们需要使用相应的配置文件

#cd/opt/FriendlyARM/mini6410/android/linux-2.6.36-android

#cpconfig_android_a70.config;注意config前面有个”.”

#make

最后会在arch/arm/boot目录下生成zImage,我们把它重新命名为azImage_a70放入光盘中,以便区分。

 

1.5从源代码中提取Android文件系统

1.5.1解压安装Android系统源代码包

在工作目录/opt/FriendlyARM/mini6410/android中执行:

#cd/opt/FriendlyARM/mini6410/android

#tarxvzf/tmp/Android/android-2.3-fs-20110520.tar.gz

将创建Android-2.3目录。

1.5.2提取Android文件系统

Android系统十分庞大,从网上下载的源文件很难顺利的成功编译,我曾经试过了,出现了很多提醒和错误,而且编译一次需要好长的时间。

为此友善公司专门做了2个脚本build-android、genrootfs.sh帮助我们去编译,具体如下:

在命令行执行:

#cd/opt/FriendlyARM/mini6410/android/Android-2.3

#./build-android

就开始编译Android-2.3系统,你需要等待很长的时间,建议开发Android系统不要虚拟机编译,使用多核的CPU加真实的Linux系统会快一些。

我就是在虚拟机上面编译的,真的好慢。

然后,再执行脚本:

#./genrootfs.sh

就可以从编译完的Android系统提取出我们需要的目标文件系统了,最后会生成rootfs_dir目录。

至此,我们已经从源代码开始,创建了在开发板上运行运行Android所需的所有核心系统文件:

Bootloader,内核和文件系统。

但是我们得到的文件系统部分则是一个目录,这就需要mktools系列工具

先把它制作成单个映像文件,才能方便使用。

1.6制作UBIFS格式的文件系统映像

注意:

针对不同组织结构的NandFlash,分别有不同的压制工具,在此以三星2代

MLCNandFlash为例(如K9GAG08U0E等,以下简称MLC2)。

进入工作目录/opt/FriendlyARM/mini6410/linux,执行以下命令:

#cd/opt/FriendlyARM/mini6410/android/Android-2.3

#mkubimage-mlc2rootfs_dirrootfs_android-mlc2.ubi

稍等片刻,将会在当前目录下生成rootfs_android-mlc2.ubi文件

至此,我们真的得到了我们想要的所有文件了:

BootLoader内核文件系统.

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2