蓝天-彭 发表于 2015-5-20 09:35:53

Cubieboard2 android编译及制作固件

本帖最后由 蓝天-彭 于 2017-1-3 15:22 编辑

                               1.搭建Ubuntu12.04下android编译环境
1.1.安装JDK$wgetdl.cubieboard.org/software/tools/android/jdk1.6.0_45.tar.gz解压:$sudotar -xvf jdk1.6.0_45.tar.gz配置环境变量:$sudo vim ~/.bashrc增加:JAVA_HOME=/jdk_pathexportJRE_HOME=/jdk_path/jreexportPATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATHjdk_path为你下载解压后的jdk路径。保存后使其生效且验证是否成功:$source~/.bashrc&&java -version
                              出现以上所示说明成功                                1.2.安装编译所需包(Ubuntu 12.04): $sudoapt-get update $sudoapt-get upgrade $sudoapt-get install build-essential u-boot-tools uboot-mkimagebinutils-arm-linux-gnueabihf $sudoapt-get install gcc g++ gcc-arm-linux-gnueabi gcc-arm-linux-gnueabihfg++-multilib $sudoapt-get install cpp-arm-linux-gnueabihf libusb-1.0-0 libusb-1.0-0-devwget fakeroot $sudoapt-get install kernel-package zlib1g-dev libncurses5-devbuild-essential $sudoapt-get install texinfo texlive ccache zlib1g-dev gawk bison flexgettext uuid-dev $sudoapt-get install ia32-libs git gnupg flex bison gperf build-essentialzip $sudoapt-get install curl libc6-dev x11proto-core-dev libx11-dev:i386lib32ncurses5-dev $sudoapt-get install libreadline6-dev:i386 mingw32 tofrodospython-markdown $sudoapt-get install libxml2-utils xsltproc zlib1g-dev:i386libgl1-mesa-dev                                2.下载 Android源码包(建议下载压缩包)1)在github 下载gitclone https://bitbucket.org/cubietech/a20-android4.2_lichee.git gitclone https://bitbucket.org/cubietech/a20-android4.2_android.git 2)在百度云下载源码压缩包:http://pan.baidu.com/s/1kTFXnPP 3.内核编译  解压后的源码包分 2个目录,一个是android 另一个是lichee,内核编译都是在lichee 下执行的。lichee主要是编译一些设备需要的模块,驱动,内核等,还有配置文件。编译出来的模块和内核会在整体编译 android时拷贝过去。 编译步骤如下:进入内核目录$cdlichee/linux-3.4拷贝内核配置文件$sudocp arch/arm/configs/cubieboard2_config .config返回到lichee目录$cd..编译内核$./build.sh -p sun7i_android等待.......编译完成:
                              编译完后你进入 lichee/out/android/common目录,在这里可以下看到编译的产物。
                               4.整体编译     内核编译完后,进入android目录下。这里执行整个固件的编译,生成system.img,userdata.img等 镜像,最后将它们打包成我们要的固件。步骤如下:le@le:/work/le/a20-android$cd android le@le:/work/le/a20-android/android$source build/envsetup.sh le@le:/work/le/a20-android/android$lunch

                              输入 15(选择 sugar_cubieboard2-eng)                              拷贝内核和模块:le@le:/work/le/a20-android/android$extract-bsp 编译:le@le:/work/le/a20-android/android$make -j8 等待...........编译完成:                              编译完成后打包:le@le:/work/le/a20-android/android$pack 最后就会在 lichee/tools/pack中生成我们最终的固件。                              至此,可以进行下一步的刷机工作:Cubieboard2刷机指导





joyhope 发表于 2015-6-13 08:13:14

本帖最后由 joyhope 于 2015-6-13 11:51 编辑

我编译lichee 的时候,linux kernel 产生,在编译mali module的时候,报告错误。说路径不在,但是自己看路径等,都有的。make -C /mnt/dev2/android/lichee/linux-3.4 M=/mnt/dev2/android/lichee/linux-3.4/modules/mali/DX910-SW-99002-r3p2-01rel2/driver/src/devicedrv/ump modules
make: Entering directory `/mnt/dev2/android/lichee/linux-3.4'
CC /mnt/dev2/android/lichee/linux-3.4/modules/mali/DX910-SW-99002-r3p2-01rel2/driver/src/devicedrv/ump/common/ump_kernel_common.o
arm-linux-gnueabi-gcc: error: directory: No such file or directory
arm-linux-gnueabi-gcc: error: directory": No such file or directory
make: *** Error 1
不理解为什么会有这个错误.

joyhope 发表于 2015-6-13 15:21:31

找到了http://cubie.cc/forum.php?mod=viewthread&tid=868答案:

joyhope 发表于 2015-6-13 15:38:15

编译android遇见如下问题target Java: android-ex-variablespeed (out/target/common/obj/JAVA_LIBRARIES/android-ex-variablespeed_intermediates/classes)
frameworks/ex/variablespeed/src/com/android/ex/variablespeed/EngineParameters.java:19: cannot access android.media.AudioManager
bad class file: android/media/AudioManager.class(android/media:AudioManager.class)
unable to access file: corrupted zip file
Please remove or make sure it appears in the correct subdirectory of the classpath.
import android.media.AudioManager;
                  ^
make: *** Error 41
不知道如何解决。

蓝天-彭 发表于 2015-6-15 08:51:04

joyhope 发表于 2015-6-13 15:38 static/image/common/back.gif
编译android遇见如下问题不知道如何解决。

先洗一遍再编一下试下:make installclean

joyhope 发表于 2015-6-15 10:20:39

我是从压缩包下载,然后编译的。 应该本身就是clean的。 会按照你的建议再尝试一下。(编译比较慢。)

ericwang 发表于 2015-8-10 15:44:05

为什么我解压的时候就出现错误呀?耗时近一天下载的源码包。解压后出现错误,郁闷。难道还要再重新下载吗?我通过百度云盘下载的 解压的出错文件为:A20_android.tar.gz
tar: Skipping to next header

gzip: stdin: invalid compressed data--format violated
tar: Child returned status 1
tar: Error is not recoverable: exiting now

蓝天-彭 发表于 2015-8-10 20:06:07

ericwang 发表于 2015-8-10 15:44 static/image/common/back.gif
为什么我解压的时候就出现错误呀?耗时近一天下载的源码包。解压后出现错误,郁闷。难道还要再重新下载吗? ...

解压工具问题把,换一个试下

ericwang 发表于 2015-8-11 09:11:22

蓝天-彭 发表于 2015-8-10 20:06 static/image/common/back.gif
解压工具问题把,换一个试下

谢谢您的回复,我试过了,包括回到Windows下试过了,都不行,可能文件包损坏了。我昨晚尝试通过git clone 下载,今早上来发现又出错了,郁闷!错误提示为:
git clone https://bitbucket.org/cubietech/a20-android4.2_android.git
Cloning into 'a20-android4.2_android'...
remote: Counting objects: 204697, done.
remote: Compressing objects: 100% (135378/135378), done.
error: RPC failed; result=56, HTTP code = 2002 MiB | 44 KiB/s   
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

蓝天-彭 发表于 2015-8-11 16:30:23

ericwang 发表于 2015-8-11 09:11 static/image/common/back.gif
谢谢您的回复,我试过了,包括回到Windows下试过了,都不行,可能文件包损坏了。我昨晚尝试通过git clone ...

github里SDK下载确实有问题,太大了数据传输会失败,建议还是重新在百度网盘上下载
页: [1] 2
查看完整版本: Cubieboard2 android编译及制作固件