cubieboard2 android,在cubieboard2双卡版上从零构建Android4.2.2系统「建议收藏」

cubieboard2 android,在cubieboard2双卡版上从零构建Android4.2.2系统「建议收藏」板子买了一段时间,终于有时间可以玩玩了,论坛上找浪费了很多时间。把虚拟机环境搭建起来,编译好镜像就可以直接使用烧写工具烧写到TF卡上了。由于买的是双TF卡插槽,没有nand,所以只能在TF卡上制作镜像了。制作过程参考官方文档,好好总结一下,一来以后自己再做时图懒图方便,二来可以方便后来人。主要可以分为一下几个步骤:一、搭建编译环境可以在XP或win7系统上安装虚拟机,在虚拟机中安装交叉编译工具来编…

大家好,又见面了,我是你们的朋友全栈君。

板子买了一段时间,终于有时间可以玩玩了,论坛上找浪费了很多时间。把虚拟机环境搭建起来,编译好镜像就可以直接使用烧写工具烧写到TF卡上了。由于买的是双TF卡插槽,没有nand,所以只能在TF卡上制作镜像了。制作过程参考官方文档,好好总结一下,一来以后自己再做时图懒图方便,二来可以方便后来人。

主要可以分为一下几个步骤:

一、搭建编译环境

可以在XP或win7系统上安装虚拟机,在虚拟机中安装交叉编译工具来编译Android,一份Android代码编译下来,至少占50G左右的空间,所以要准备

足够的空间,也可以直接装Ubuntu。

二、源码下载并编译

图方便,直接从cubieboard官方网站的FTP下载,有时间可以从git下载,可以同步更新。

三、使用烧写工具将固件烧入到TF卡上。

一、搭建编译环境

$sudo apt-get update

$sudo apt-get upgrade

$sudo apt-get install build-essential u-boot-tools uboot-mkimage binutils-arm-linuxgnueabihf gcc-arm-linux-gnueabi gcc-arm-linux-gnueabihf cpp-arm-linux-gnueabihf libusb-1.0-0 libusb-1.0-0-dev git wget fakeroot kernel-package zlib1g-dev libncurses5-dev

$sudo apt-get install build-essential git u-boot-tools texinfo texlive ccache zlib1g-dev gawk bison flex gettext uuid-dev

$sudo apt-get install ia32-libs

$sudo apt-get install ncurses-dev

1.1 首先安装虚拟机及Ubuntu

要安装vmware_tools时在win和Ubuntu之间拷贝文件。

1.2 安装JDK

编译Android需要安装JDK工具,因此安装好虚拟机后需要安装这个工具。可以到官方网站上去下:

$wget dl.cubieboard.org/software/tools/android/jdk1.6.0_33.tar.gz

将其解压到/work/tools目录下,然后修改etc/profile文件设置一些环境配置变量,添加以下配置变量:

JAVA_HOME=/work/tools/jdk1.6.0_33

export JRE_HOME=/work/tools/jdk1.6.0_33/jre

export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

然后source以下:$source etc/profile

1.3 编译Android需要64位的,对于其他版本的需要安装以下包来支持编译:

sudo apt-get install git gnupg flex bison gperf build-essential \

zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \

libx11-dev:i386 libreadline6-dev:i386 g++-multilib mingw32 tofrodos \

python-markdown libxml2-utils xsltproc zlib1g-dev:i386

1.4 然后安装交叉编译工具工具链:

1. $sudo apt-get update

2. $sudo apt-get upgrade

3. $sudo apt-get install build-essential u-boot-tools uboot-mkimage binutils-arm-linuxgnueabihf gcc-arm-linux-gnueabi gcc-arm-linux-gnueabihf cpp-arm-linux-gnueabihf libusb-1.0-0 libusb-1.0-0-dev git wget fakeroot kernel-package zlib1g-dev libncurses5-dev

4. $sudo apt-get install build-essential git u-boot-tools texinfo texlive ccache zlib1g-dev gawk

bison flex gettext uuid-dev

5. $sudo apt-get install ia32-libs

6. $sudo apt-get install ncurses-dev

二、源码下载并编译

2.1 可以使用git建立自己的仓库下载,也可以直接从官方网站上下载:

http://dl.cubieboard.org/software/a20-cubieboard/android/CubieBoard2_SDK_20140508.tar.gz

2.2 下载后解压源码:

$tar xvzf CubieBoard2_SDK_20140508.tar.gz

2.3 拷贝配置文件:

$cd lichee

$cp linux-3.4/arch/arm/configs/cubieboard2_config linux-3.4/.config

2.4 编译内核

./build.sh -p sun7i_android

当出现以下信息时,说明成功编译:

INFO: build u-boot OK.

INFO: build rootfs …

INFO: skip make rootfs for android

INFO: build rootfs OK.

INFO: build lichee OK.

2.5 编译Android部分:输入 15 (15. sugar_cubieboard2-eng)

$cd android

$source build/envsetup.sh

$lunch

2.6 编译和打包:将uboot、kernel、rootfs等镜像打包成img文件

$extract-bsp

$make -j8

$pack

最后会打印固件生成的位置,以下为我的固件生成的位置:/lichee/tools/pack/sun7i_android_sugar-cubieboard2.img

三、使用烧写工具将固件烧入到TF卡上。

3.1 烧写工具下载地址:http://pan.baidu.com/s/1eQtb4eI

3.2 在PC win环境下插入读卡器,将其他多余的USB设备卸载掉,打开 PhoenixCard.exe,按照以下进行设置:

34128833

完成设置后,点击烧录,直到出现如下面图片一样的现实就表明成功了

34128833

3.3 从TF卡启动Android,在PC上安装串口环境,使用putty

34128833

启动成功信息:

base bootcmd=run setargs_mmc boot_normal

bootcmd set setargs_mmc

key 0

recovery key high 6, low 4

cant find fstbt value

to be run cmd=run setargs_mmc boot_normal

the user data’magic is bad

WORK_MODE_BOOT

WORK_MODE_BOOT

[      0.965]Hit any key to stop autoboot:  0

read boot or recovery all

[      6.929]sunxi flash read :offset 4000000, 12287631 bytes OK

[      6.939]ready to boot

[      6.942]

Starting kernel …

aw_pm_init: not support super standby.

aw_pm_init: script_parser_fetch err.

notice: ir_wakeup = 0.

can’t get item foremac_power gpio !

[hdmi]hdmi module init

##fb init:w=1920,h=1080,fbmode=3

init: reading config file

init: ———–没找到sata节点,nand启动————–

init: logo match failed!fbsize = 8294400

init: HDMI status = 1, try10 times!TV status = 0

init: start e2fsck listening…

[hdmi]hdmi module init

EXT4-fs (mmcblk0p12): VFS: Can’t find ext4 filesystem

init: buffer : /dev/block/mmcblk0p12[mmc-msg] sdc0 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B

init: do_umount: /data

init: do_umount error = Invalid argument

init: C_IN_START

init: path = /dev/block/data

init: do_umount: /cache

init: dont need format /dev/block/UDISK

init: dont need format /dev/block/private

init: C_IN_START

init: path = /dev/block/cache

init: do_umount: /databk

ir_init: ir_wakeup script_get_item error.

ir_init: power_key script_get_item error.

ir_init: ir_addr_code script_get_item error.

failed to get gpio_para used information

[sunxi_leds_init] request gpio188 failed

init: untracked pid 1152 exited

init: cannot find ‘/system/etc/install-recovery.sh’, disabling’flash_recovery’

android_usb: already disabled

init: usingdeprecatedsyntaxforspecifying property’sys.usb.config’, use ${name} instead

init: usingdeprecatedsyntaxforspecifying property’sys.usb.config’, use ${name} instead

sh

root@android:/ #

root@android:/ #

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/163029.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 别人的收藏_自己的qq收藏别人是否能看到

    别人的收藏_自己的qq收藏别人是否能看到0DAY 0daydivxz数据库0dayGamezHowtotellNFOrceEntertainmentTLF0DayCheckIndexTLF资讯网UGiA0daysearchengine_2002-2005梦幻0Day~game阿拉下载龙族-北京站-MCSYSTEM2004 BBS  下载论坛

    2022年10月8日
  • 一键锁定计算机快捷方式,还原win8系统创建一键锁定计算机的快捷方式的技巧…

    一键锁定计算机快捷方式,还原win8系统创建一键锁定计算机的快捷方式的技巧…今天和大家分享一下关于对win8系统创建一键锁定计算机的快捷方式设置的方法,在使用win8系统的过程中经常不知道如何去对win8系统创建一键锁定计算机的快捷方式进行设置,有什么好的办法去设置win8系统创建一键锁定计算机的快捷方式呢?在这里小编教你只需要1、首先在桌面上的空白处鼠标右击选择“新建–快捷方式”,然后在弹出来的创建快捷方式界面中,在“请键入对象的位置”框中输入:rundll32.ex…

    2022年7月21日
  • 白话空间统计之:Moran’s I(莫兰指数)

    白话空间统计之:Moran’s I(莫兰指数)Moran’sI这个东西,官方叫做:莫兰指数,是澳大利亚统计学家帕特里克·阿尔弗雷德·皮尔斯·莫兰(PatrickAlfredPierceMoran),在1950年提出的。一般是用来度量空间相关性的一个重要指标。

    2022年6月25日
  • activity生命周期的七种方法_九分之五大还是九分之四大

    activity生命周期的七种方法_九分之五大还是九分之四大Activity生命周期是指一个Activity从创建到销毁的全过程。下图是Activity的生命周期模型。一、生命周期五种状态(1)启动状态:Activity的启动状态很短暂,当Activity启动后便会进入运行状态。(2)运行状态:Activity在此状态时处于屏幕最前端,它是可见、有焦点的,可以与用户进行交互。如单击、长按等事件。即使出现内存不足的情况,Android…

    2022年8月30日
  • java递归无限层级树_最小生成树和最短路径的区别

    java递归无限层级树_最小生成树和最短路径的区别给定一棵 N 个节点的树,要求增加若干条边,把这棵树扩充为完全图,并满足图的唯一最小生成树仍然是这棵树。求增加的边的权值总和最小是多少。注意: 树中的所有边权均为整数,且新加的所有边权也必须为整数。输入格式第一行包含整数 t,表示共有 t 组测试数据。对于每组测试数据,第一行包含整数 N。接下来 N−1 行,每行三个整数 X,Y,Z,表示 X 节点与 Y 节点之间存在一条边,长度为 Z。输出格式每组数据输出一个整数,表示权值总和最小值。每个结果占一行。数据范围1≤N≤60001≤Z≤

    2022年8月9日
  • asf如何在linux运行,linux环境下使用mono运行asf挂卡

    asf如何在linux运行,linux环境下使用mono运行asf挂卡杰瑞包大好评啊,但是带来的后果就是挂卡挂不完了。然而手里的服务器全是linux环境的并不支持C#写的ASF,所以用monof**k之。Ubuntu篇接下来介绍如何安装mono,以Ubuntu14.04为例。1.运行下面代码授权注册repo源并更新软件列表:$sudoapt-keyadv–keyserverkeyserver.ubuntu.com–recv-keys3FA7E…

    2022年10月25日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号