QT210 Android4.0源码编译和烧录文档整理
开发环境说明:
- Ubuntu 12.04 LTS 32bit
源码文件目录:
- 勤研光盘2013-5-4\4.0
- https://github.com/jackyh
(建议在Linux环境下通过git下载)
编译过程说明:
编译uboot (qt210_ics_uboot.bz2)
- 交叉编译环境:
tar jxf arm-2009q3-67-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 -C /usr/local/arm注:必须解压到/usr/local/arm目录下,因为Android源码Makefile当中,包含了arm-linux-gcc的绝对路径
- 然后进入到交叉编译压缩包的目录执行:
cd ./qt210_ics_ubootmake smdkv210single_config (配置)make (编译)完成后qt210_ics_uboot 目录下就有了u-boot.bin 文件, qt210_ics_uboot/tools 目录中有了mkimage 文件(这个用来make uImage 的) 把mkimage 所在的目录加入到环境变量中或者是把mkimage 复制到/usr/bin目录中
编译Kernel (qt210_ics_kernel.bz2)
cd qt210_ics_kernel3.0.8/cp config_capacity .config (电容屏)make -j2 uImage (–j4 也行,数字指参与编译的线程数)编译完成之后,在目录qt210_ics_kernel3.0.8/arch/arm/boot 中应该有uImage 文件
编译android(android_qt210.bz2)
在编译Android源码之前,一定要将开发环境搭建完成。比如:安装java6,gcc4.5等
- 运行 qt210中包含的shell脚本:
./installtools.sh如果出现如下错误,将出错的项目从installtools.sh中去掉。再安装!
wenhao@teacher-A:~/qt210$ sh source/installtools.sh
get host tools now 正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
E: 未发现软件包 libc6-dev-i386
E: 未发现软件包 ia32-libs
E: 未发现软件包 lib32z-dev
E: 未发现软件包 lib32ncurses5-dev
尽量的保证installtools.sh当中的软件都安装完成
- 解压android源码:
tar jxf android_qt210.tar.bz2运行qt210当中的shell脚本:
./compilesrc.sh (compilesrc.sh和解压后的android源码放在同一级目录)如果在编译过程当中出现缺少库的情况,那么缺什么库就安装什么库。
compilesrc.sh中的内容也比较简单,就是编译android源码的三个步骤:
- source build/envsetup.sh
- lunch full_smdkv210-eng
- make -j4
烧写过程说明:
制作TF启动,也就是把UBOOT烧到TF卡中
将读卡器插入到电脑上
在ubuntu虚拟机下,找到已经编译好的uboot所在文件夹
cd qt210_ics_uboot/sd_fusingsudo ./sd_fusing_uboot.sh /dev/sdb(将编译好的uboot烧录到tf卡当中)将TF卡插入开发板,选择TF卡启动
进入bootloader模式,然后敲:
fdisk -c 0 (格式化sd卡)fastboot(启动fastboot工具,使用fastboot需要连接USB OTG线)在windows当中,建立文件夹将编译好的
u-boot.bin、uImage、ramdisk-uboot.img、system.img放入其中将fastboot.exe和leo_android.bat拷贝到目录当中leo_android.bat内容如下:
fastboot.exe flash bootloader u-boot.bin
fastboot.exe flash kernel uImage
fastboot.exe flash system system.img
fastboot.exe flash ramdisk ramdisk-uboot.img
fastboot.exe -w
双击运行leo_android.bat,现在就通过fastboot协议烧录android系统
烧录完成后将tf卡取出插入电脑在ubuntu下,清除第三分区
sudo mkfs.ext4 /dev/sdb3- 插入开发板重启启动即可!
注意:
由于开发板android4.0.4移植的不够完善,有时候会出现电容屏不好使,或者无法解锁,所以,设置--developer options-->Stay awake
还有屏保时间设置最长为30min
Written with LeoChin.
QT210 Android4.0源码编译和烧录文档整理的更多相关文章
- 【转】如何在Ubuntu11.10(32位)下编译Android4.0源码(图文)
原文网址:http://blog.csdn.net/flydream0/article/details/7046612 关于如何下载Android4.0的源码请参考我的另一篇文章: http://bl ...
- hadoop-1.2.0源码编译
以下为在CentOS-6.4下hadoop-1.2.0源码编译步骤. 1. 安装并且配置ant 下载ant,将ant目录下的bin文件夹加入到PATH变量中. 2. 安装git,安装autoconf, ...
- hadoop-2.6.0源码编译问题汇总
在上一篇文章中,介绍了hadoop-2.6.0源码编译的一般流程,因个人计算机环境的不同, 编译过程中难免会出现一些错误,下面是我编译过程中遇到的错误. 列举出来并附上我解决此错误的方法,希望对大家有 ...
- Spark1.0.0 源码编译和部署包生成
问题导读:1.如何对Spark1.0.0源码编译?2.如何生成Spark1.0的部署包?3.如何获取包资源? Spark1.0.0的源码编译和部署包生成,其本质只有两种:Maven和SBT,只不过针对 ...
- ambari 2.5.0源码编译安装
参考:https://www.ibm.com/developerworks/cn/opensource/os-cn-bigdata-ambari/index.html Ambari 是什么 Ambar ...
- 创作gtk源码级vim帮助文档 tags
创作gtk源码级vim帮助文档 tags 缘由 那只有看到源码了.在linux源码上有个网站 http://lxr.linux.no /+trees, 可以很方面的查出相应版本的代码实现,gtk没有. ...
- Net 通用权限管理系统源码 带数据库设计文档,部署说明文档
Net 通用权限管理系统源码 带数据库设计文档,部署说明文档 包括数据库设计文档部署安装文档源码数据库文件 下载地址:http://www.mallhd.com/archives/1389
- 没必要看源码。。把文档学通就已经牛逼了(我们大多还是在应用层,还达不到研究的程度。附class与examples大全链接)
[学霸]深圳-鑫 2017/7/11 13:54:07只是学习怎么用QT的话,不用看源码.看帮助文档就很好要学习编码风格与思路,就看看源码 [学神]武汉-朝菌 2017/7/11 13:54:39没必 ...
- 使用Maven将Hadoop2.2.0源码编译成Eclipse项目
编译环境: OS:RHEL 6.3 x64 Maven:3.2.1 Eclipse:Juno SR2 Linux x64 libprotoc:2.5.0 JDK:1.7.0_51 x64 步骤: 1. ...
随机推荐
- python学习之——小闹钟(持续完善ing)
"啊,坏了,我忘了那啥啥了~~~" 为了不坏了,动手做一个小闹钟吧,一点点完善的过程一定美好极了,必像等待培育许久的花儿绽放一样,不多说,加油,期待↖(^ω^)↗ #! /usr/ ...
- 常用UML模型简要小结
关系: 关联(组合,生命周期相同:聚合,物以类聚),依赖,泛化(继承),实现 还有 包含,细化复用已有用例:扩展,非必要主要的用例 图: 1.用例图:就是描述一个功能场景(集合),其实用例编写(前后置 ...
- 彻底卸载sublime txt
最近彻底重装系统之后,安装sublime txt3, 自己设置了一些,总是觉得不是很对劲,想重新安装. 结果每次安装之后,总是有一些配置文件和卸载之前的是一样的,重复几次总是如此,于是网上搜资料,怎么 ...
- iOS字符串为空的判断
//判断字符串 -(BOOL) isValidString:(id)input { if (!input) { return NO; } if ((NSNull *)input == [NSNull ...
- android 区分wifi是5G还是2.4G
http://bbs.csdn.net/topics/391033966?page=1 我一开始看这帖子,找不到答案,为了后来的人,我来回复吧.WifiManager wifiManager = (W ...
- Linux内核实现中断和中断处理(一)
Linux实现中断处理 内核是怎么知道应用程序要调用系统调用的呢?或者说应用程序怎么通知系统内核自己需要执行一个系统调用,这是通过软中断实现的,通过引发一个异常来促使系统切换到内核态去执行异常处理程序 ...
- shell语法快速入门(1)
#得到绝对路径 DIR=$(cd `dirname $0`;pwd) $DIR/file.txt #去掉#注释 egrep -v "(#|^$)" /etc/zabbix/zabb ...
- Windows 8.1 应用再出发 - 磁贴的更新
本篇和大家一起了解一下Windows 8.1 中磁贴的更新,我们来看看如何利用它做出更好的应用磁贴. 首先我们从展现形式上来对比一下Windows 8 与 Windows 8.1 中的磁贴: Wind ...
- poj 3635/hdu 1676 Full Tank? 车辆加油+最短路
http://acm.hdu.edu.cn/showproblem.php?pid=1676 给出一张图,n<=1000,m<=10000. 有一辆车想从图的一个地方到达另外一个地方,每个 ...
- Actions类的一些主要方法
下面列举一下Actions类的一些主要方法 * keyDown.模拟按键按下 * keyUp.模拟按键弹起 * click * sendKeys * doubleClick.鼠标左键双击 * ...