【分享】TE6410 上 Android移植过程

a2156z   2010-5-4 13:30 楼主


本帖最后由 飞凌嵌入式 于 2010-4-29 08:38 编辑  其他TE6410资料请参考 www.witech.com.cn


1.安装linux 环境
安装Ubuntu Linux 系统,从网站上下载操作系统安装光盘映像,地址:
http://mirror.lupaworld.com/ubuntu/releases/8.04/
下载ubuntu-8.04.2-desktop-i386.iso,刻录成光盘安装,安装可以在windows 系统下进行,
选取有15G 空间的硬盘安装,输入用户密码开始安装

这一步结束退出光盘重启进入Ubuntu 系统,完成余下系统安装。
Linux 安装完成,进入Ubuntu 系统,确保电脑连接Internet,安装一些必要软件。
打开终端输入命令框,进行下面的操作:
$ sudo apt-get install ssh
$ sudo apt-get install flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl
$ sudo apt-get install valgrind
$ sudo apt-get install sun-java6-jdk
$ sudo apt-get install libncurses5-dev
所有软件系统会自动从网络下载安装,完成后可以开始Android 的移植。


2.安装编译工具
下载:
$ wget  
http://www.codesourcery.com/publ ... c-linux-gnu.tar.bz2
安装:
$ tar -xjvf arm-2008q1-126-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2


3.下载Linux kernel For android
sudo apt-get install git-core curl
git clone git://android.git.kernel.org/kernel/common.git

4. 下载Android Source Code
curl http://android.git.kernel.org/repo >~/bin/repo
chmod a+x ~/bin/repo
repo init
repo sync

5. 编译出Android SDK
make sdk

6.获得root file system
⑴下载busybox 工具从下面地址
http://benno.id.au/blog/2007/11/14/android-busybox(linux 环境中下载)
⑵运行emulator 获取root file system
$ cd <目录>/ android-sdk_m5-rc15_linux-x86/tools
$ ./emulator&
等待emulator 启动,看到出现Android 系统画面,进入菜单ALL/Dev Tools/Development Settings 下,将Wait for debugger,Show running processes,Show screen updates 这三项打勾,回到命令输入终端。
$ ./adb push /busybox /data
$ ./adb shell
# /data/busybox tar -czf system.tar.gz /system
# /data/busybox tar -czf data.tar.gz /data
# /data/busybox tar -czf etc.tar.gz /etc
# /data/busybox tar -czf sbin.tar.gz /sbin
# exit
$ ./adb pull /system.tar.gz ./
$ ./adb pull /data.tar.gz ./
$ ./adb pull /etc.tar.gz ./
$ ./adb pull /sbin.tar.gz ./
$ ./adb pull /init ./
通过busybox 工具获得了emulator 的文件并打包,下面建立root 文件目录
$ mkdir initial_ram_disk
$ cd initial_ram_disk
$ mkdir cache
$ mkdir d
$ mkdir dev
$ mkdir proc
$ mkdir root
$ mkdir sdcard
$ mkdir sys
$ mkdir tmp
$ mkdir var
$ tar -xf /system.tar.gz ./
$ tar -xf /data.tar.gz ./
$ tar -xf /etc.tar.gz ./
$ tar -xf /sbin.tar.gz ./
$ cp /init ./
包含Android root 文件系统的initial_ram_disk 做好。

7修改Linux kernel 源码
下载的kernel 文件是不支持smdk6400 开发板的,必须加入smdk6400 的配置文件到kernel 中,同时修改Kconfig 和Makefile 文件。
从成熟的平台下拷贝
mach-s3c6400
mach-s3c6410
plat-s3c6400
plat-s3c

修改makefile Kconfig等

8参考开发板中的 .config文件进行配置。
9编译内核,make uImage
10
制作一张cd卡引导的linux系统盘,用来烧写u-boot,内核,文件系统等。
参考Te6410 andorid用户手册。

11
从nandflash启动,可以正常进入android

回复评论 (3)

学习学习.......
点赞  2010-5-4 14:18
学习.......
点赞  2010-5-4 14:21
广告贴
希望发个Android 2.2 的谢谢
点赞  2010-5-4 16:50
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复