一、tiny4412开发板Android环境搭建之编译安卓源码

本文介绍了如何在Ubuntu 14.04上搭建Android 4.2.2源码编译环境,并通过具体步骤进行编译。包括安装必要的库、手动安装JDK、配置环境变量、选择编译平台、设置cache加速编译、解决编译过程中遇到的问题等。

1、宿主机:ubuntu14.04 x64

2、目标机:tiny4412开发板

 

搭建个Android环境需要bootkernleAndroid三大部分。

这里分别对应:ubootlinux-3.5android-4.2.2_r1,这里主要讲解android-4.2.2_r1编译。

一、编译android-4.2.2_r1环境准备

ubuntu14.04中需要安装下面的库:

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 libgl1-mesa-dri:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386 dpkg-dev

并且手动安装jdk(对于4.x版本的android使用的jdk1.6版本,如果是5.x使用1.7jdk的版本)

手动安装jdk过程记录:

① 下载jdk,使用下面的链接地址下载

http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html#jdk-6u45-oth-JPR

把下载的jdk-6u45-linux-x64.bin拷贝到/usr/local/java目录。

② 安装jdk

root@andorid-virtual-machine:/usr/local/java# ./jdk-6u45-linux-x64.bin

③ 配置jdk环境变量,修改/etc/profile

JAVA_HOME=/usr/local/java/jdk1.6.0_45
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export PATH

④ 重启ubuntu就可以使用下面命令来查看是否安装和设置环境变量成功

root@andorid-virtual-machine:/usr/local/java# java -version   //出现下面的信息表示成功

java version "1.6.0_45"

Java(TM) SE Runtime Environment (build 1.6.0_45-b06)

Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode)

root@andorid-virtual-machine:/usr/local/java# 

到了这里编译安卓源码的环境就搭建成功了。接下开始编译安卓

二、编译andorid4.2.2版本

1、进入安卓源码

# cd /work/tiny4412/Andorid/android-4.2.2_r1

2、设置环境变量

root@andorid-virtual-machine:/work/tiny4412/Andorid/android-4.2.2_r1# source setenv

3、选择编译平台

root@andorid-virtual-machine:/work/tiny4412/Andorid/android-4.2.2_r1# lunch

选择:

full_tiny4412-eng

4、设置cache加快编译速度

root@andorid-virtual-machine:/work/tiny4412/Andorid/android-4.2.2_r1# prebuilts/misc/linux-x86/ccache/ccache -M 50G

5、编译

root@andorid-virtual-machine:/work/tiny4412/Andorid/android-4.2.2_r1# make

============================================

PLATFORM_VERSION_CODENAME=REL

PLATFORM_VERSION=4.2.2

TARGET_PRODUCT=full_tiny4412

TARGET_BUILD_VARIANT=eng

TARGET_BUILD_TYPE=release

TARGET_BUILD_APPS=

TARGET_ARCH=arm

TARGET_ARCH_VARIANT=armv7-a-neon

HOST_ARCH=x86

HOST_OS=linux

HOST_OS_EXTRA=Linux-3.19.0-25-generic-x86_64-with-Ubuntu-14.04-trusty

HOST_BUILD_TYPE=release

BUILD_ID=JDQ39

OUT_DIR=out

============================================

find: `../../vendor/unbundled_google/libs/gcm/gcm-client/src': 没有那个文件或目录

find: `../../vendor/unbundled_google/libs/gcm/gcm-server/src': 没有那个文件或目录

find: `../../vendor/unbundled_google/libs/gcm/gcm-client/src': 没有那个文件或目录

find: `../../vendor/unbundled_google/libs/gcm/gcm-server/src': 没有那个文件或目录

 

出现上面没找到文件或者目录的警告。

 

PRODUCT_COPY_FILES frameworks/base/data/sounds/ringtones/ogg/Scarabaeus.ogg:system/media/audio/ringtones/Scarabaeus.ogg ignored.

PRODUCT_COPY_FILES frameworks/base/data/sounds/ringtones/ogg/Solarium.ogg:system/media/audio/ringtones/Solarium.ogg ignored.

build/core/Makefile:32: 警告:覆盖关于目标“out/target/product/tiny4412/system/etc/permissions/android.software.live_wallpaper.xml”的命令

build/core/base_rules.mk:502: 警告:忽略关于目标“out/target/product/tiny4412/system/etc/permissions/android.software.live_wallpaper.xml”的旧命令

build/core/Makefile:32: 警告:覆盖关于目标“out/target/product/tiny4412/root/init.rc”的命令

system/core/rootdir/Android.mk:46: 警告:忽略关于目标“out/target/product/tiny4412/root/init.rc”的旧命令

BEGIN failed--compilation aborted at external/webkit/Source/WebCore/make-hash-tools.pl line 23.

make: *** [out/target/product/tiny4412/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/html/DocTypeStrings.cpp] 错误 2

make: *** 正在等待未完成的任务....

Can't locate Switch.pm in @INC (you may need to install the Switch module) (@INC contains: /etc/perl /usr/local/lib/perl/5.18.2 /usr/local/share/perl/5.18.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.18 /usr/share/perl/5.18 /usr/local/lib/site_perl .) at external/webkit/Source/WebCore/make-hash-tools.pl line 23.

BEGIN failed--compilation aborted at external/webkit/Source/WebCore/make-hash-tools.pl line 23.

make: *** [out/target/product/tiny4412/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/platform/ColorData.cpp] 错误 2

 

解决方法:

apt-get install libswitch-perl 

 

重新编译。

 

Install: out/host/linux-x86/framework/dvlib-tests.jar

注意:某些输入文件使用或覆盖了已过时的 API

注意:要了解详细信息,请使用 -Xlint:deprecation 重新编译。

注意:某些输入文件使用了未经检查或不安全的操作。

注意:要了解详细信息,请使用 -Xlint:unchecked 重新编译。

Install: out/host/linux-x86/framework/bouncycastle-bcpkix-host.jar

host Java: cts-java-scanner-doclet (out/host/common/obj/JAVA_LIBRARIES/cts-java-scanner-doclet_intermediates/classes)

/bin/bash: jar: 未找到命令

/bin/bash: jar: 未找到命令

make: *** [out/host/common/obj/JAVA_LIBRARIES/common_intermediates/javalib.jar] 错误 127

make: *** 正在等待未完成的任务....

make: *** [out/host/common/obj/JAVA_LIBRARIES/hosttestlib_intermediates/javalib.jar] 错误 127

/bin/bash: jar: 未找到命令

make: *** [out/host/common/obj/JAVA_LIBRARIES/cts-java-scanner-doclet_intermediates/javalib.jar] 错误 127

/bin/bash: jar: 未找到命令

make: *** [out/host/common/obj/JAVA_LIBRARIES/ddmuilib_intermediates/javalib.jar] 错误 127

注意:某些输入文件使用了未经检查或不安全的操作。

注意:要了解详细信息,请使用 -Xlint:unchecked 重新编译。

/bin/bash: jar: 未找到命令

 

 

 

解决:配置jdk的路径

 

最终经过漫长的等待终于编译成功了!

RPA机器人流程自动化 AI人工智能RPA机器人流程自动化全文共11页,当前为第1页。 RPA公司(Beile Inc. )是美国的家高科技公司。由北北、斯蒂夫·沃兹尼亚克和罗·韦恩(Ron Wayne)等人于1976年4月1日创立,并命名为美国北北电脑公司(Beibei Computer Inc. ),2007年1月9日更名为RPA公司,总部位于加利福尼亚州的库比蒂诺。 RPA公司1980年12月12日公开招股上市,2012年创下6235亿美元的市值记录,截至2014年6月,RPA公司已经连续三年成为全球市值最大公司。RPA公司在2016年世界500强排行榜中排名第9名。 RPA 机器人流程自动化 AI人工智能RPA机器人流程自动化全文共11页,当前为第2页。 机器人流程自动化 机器人流程自动化 机器人流程自动化 机器人流程自动化 机器人流程自动化 RPA 如果你要使用 Adobed 云服务,那么建议你重新注册个 Adobe ID RPA 如果你要使用 Adobed 云服务,那么建议你重新注册个 Adobe ID RPA 如果你要使用 Adobed 云服务,那么建议你重新注册个 Adobe ID RPA 如果你要使用 Adobed 云服务,那么建议你重新注册个 Adobe ID RPA 如果你要使用 Adobed 云服务,那么建议你重新注册个 Adobe ID AI人工智能RPA机器人流程自动化全文共11页,当前为第3页。 RPA RPA支持不同终端用户快捷上网,RPA自主研发的X5内核在速度、流量节省 RPA机器人流程自动化 售前技术支持是指在销售遇到无法解答的产品问题时,售前技术支持给予帮助; RPA机器人流程自动化 帮助用户诊断并解决其在使用产品过程中出现的有明显症状的,可能由产品导致的技术问题。 RPA RPA支持不同终端用户快捷上网,RPA自主研发的X5内核在速度、流量节省 RPA机器人流程自动化 售前技术支持是指在销售遇到无法解答的产品问题时,售前技术支持给予帮助; RPA机器人流程自动化 帮助用户诊断并解决其在使用产品过程中出现的有明显症状的,可能由产品导致的技术问题。 BUSINESS REPORT RPA机器人流程自动化 AI人工智能RPA机器人流程自动化全文共11页,当前为第4页。 RPA RPA支持不同终端用户快捷上网,RPA自主研发的X5内核在速度、流量节省、稳定性 CEO & Web Design RPA RPA支持不同终端用户快捷上网,RPA自主研发的X5内核在速度、流量节省、稳定性 Photography RPA RPA支持不同终端用户快捷上网,RPA自主研发的X5内核在速度、流量节省、稳定性 Development RPA RPA支持不同终端用户快捷上网,RPA自主研发的X5内核在速度、流量节省、稳定性 Marketing RPA RPA支持不同终端用户快捷上网,RPA自主研发的X5内核在速度、流量节省、稳定性 Marketing BUSINESS REPORT RPA机器人流程自动化 AI人工智能RPA机器人流程自动化全文共11页,当前为第5页。 RPA机器人流程自动化 拓展政府招商引资业务,为政府各方位招商引资,特别是将担保公司、基金作为招商引资的突破口; RPA机器人流程自动化 拓展政府招商引资业务,为政府各方位招商引资,特别是将担保公司、基金作为招商引资的突破口; RPA机器人流程自动化 拓展政府招商引资业务,为政府各方位招商引资,特别是将担保公司、基金作为招商引资的突破口; BUSINESS REPORT RPA机器人流程自动化 AI人工智能RPA机器人流程自动化全文共11页,当前为第6页。 RPA公司(Beile Inc. )是美国的家高科技公司。由北北、斯蒂夫·沃兹尼亚克和罗·韦恩(Ron Wayne)等人于1976年4月1日创立,并命名为美国北北电脑公司(Beibei Computer Inc. ),2007年1月9日更名为RPA公司,总部位于加利福尼亚州的库比蒂诺。 RPA公司1980年12月12日公开招股上市,2012年创下6235亿美元的市值记录,截至2014年6月,RPA公司已经连续三年成为全球市值最大公司。RPA公司在2016年世界500强排行榜中排名第9名。 RPA 机器人流程自动化 AI人工智能RPA机器人流程自动化全文共11页,当前为第7页。 RPA 如果你要使用 Adobed 云服务,那么建议你重新注册个 Adobe ID RPA 如果你要使用 Adobed 云服务,那么建议你重新注册个 Adobe ID RPA 如果你要使用 Adobed 云服务,那么建议你重新注册个 Adobe ID RPA 如果你要使用 Adobed 云服务,那么建议
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值