Android4.4编译系统介绍
RK312X_ANDROID4.4.4-SDK_V1.0_20140922发布说明

密级状态:绝密()秘密()内部()公开(√)RK312X_ANDROID4.4.4-SDK_V1.0_20140922发布说明(技术部,MID组)文件状态:[]正在修改[√]正式发布当前版本:V1.0作者:何云完成日期:2014-09-22审核:张帅、张小珠完成日期:福州瑞芯微电子有限公司Fuzhou Rockchips Semiconductor Co.,Ltd(版本所有,翻版必究)版本历史版本号作者修改日期修改说明备注V1.0何云2014.09.22初始发布目录1概述 (2)2主要支持功能 (2)2.1功能项说明与配置 (2)2.1.1工具说明 (2)2.1.2内核板极配置 (3)2.1.3Camera配置说明 (3)2.1.4PMIC使用说明 (3)3SSH公钥操作说明 (3)3.1SSH公钥生成 (3)3.2使用KEY-CHAIN管理密钥 (4)3.3多台机器使用相同SSH公钥 (5)3.4一台机器切换不同SSH公钥 (6)3.5密钥权限管理 (7)4REPO同步说明 (7)4.1G IT权限申请说明 (7)4.2源码获取说明 (7)5编译说明 (8)5.1编译环境搭建 (8)5.2编译步骤 (12)5.2.1kernel编译步骤 (12)5.2.2uboot编译步骤 (12)5.2.3Android编译步骤 (12)5.3烧写说明 (12)1概述本版本是配合RK312X平台发布的Android4.4.4的SDK代码。
适用于RK312X开发板以及基于其上所有开发产品。
环境编译事宜请参见第5章节编译说明。
下载代码请参考第4章节repo同步操作。
本文档提及的文档和工具,工具位于工程根目录/RKTools文件夹下,文档位于工程根目录/RKDocs文件夹下。
工具的使用说明都在工具相应目录里。
2主要支持功能参数模块名数据通信Wi-Fi、USB以太网卡、3G Dongle、USB、SDCARD应用程序图库、APK安装、谷歌市场、浏览器、计算器、日历、摄像、闹钟、下载、电子邮件、资源管理器、Gmail、谷歌地图、音乐、录音、设置、视频播放器、GTalk、、CTS2.1功能项说明与配置2.1.1工具说明与SDK同步发布的产测工具包括:烧写工具、量产工具、固件工厂工具、PCBA测试工具,整机测试APK等。
android源码编译及rom制作

GNU make 3.81-3.82 JDK 6(生成 Gingerbread 或更高版本) JDK 5(Froyo 或旧版本) Git 1.7 或更高版本 gcc/g++ 4.4 (其他版本编译出错)
设置Linux编译环境
安装JDK: Java6:
$ sudo add-apt-repository "deb / lucid partner" $ sudo apt-get update $ sudo apt-get install sun-java6-jdk
一整套编译 100GB 选择编译分支
建议:不要使用虚拟机安装ubuntu编译 1、编译花费时间长,需要内存大 2、如果配置低,可能会卡住不动 3、虚拟机连接手机有问题,很可能不识别,编译前需要从手机拉 配置数据;不能使用fastboot模式刷机
设置Linux编译环境
|-- prebuilt
(x86和arm架构下预编译的一些资源)
|-- sdk
(sdk及模拟器)
|-- system
(文件系统库、应用及组件——C语言)
|-- vendor
(厂商定制代码)
Android源码编译
初始化编译环境 下载代码树 编译 编译内核
sudo chmod a+rx /etc/udev/rules.d/51-android.rules sudo /etc/init.d/udev restart
3.重启adb服务(必须为sudo 已配置android环境变量)
android编译流程

android编译流程Android编译流程是将源代码转化为可执行的Android应用程序的过程。
编译流程包括以下几个主要步骤:1.获取源代码:首先,开发人员需要从Android Open Source Project (AOSP) 或者其他可靠的源代码库中获取Android源代码。
获取源代码可以通过使用版本控制工具如Git来完成。
2.准备构建环境:在编译之前,需要准备好构建环境。
这包括安装正确的开发工具、依赖库和配置。
- 开发工具:Android编译使用Java编程语言,因此需要安装Java Development Kit (JDK)。
同时还需要安装Android软件开发工具包(SDK),用于构建和测试Android应用。
- 依赖库:编译Android需要一些依赖库,包括C/C++编译器、make 工具、libc、libm和其他系统库。
这些库可以通过安装合适的软件包管理工具来获取。
-配置:开发人员需要根据构建计划配置构建环境。
这包括选择编译器版本、构建目标平台以及其他构建选项。
3.设置环境变量:为了让系统能够找到正确的构建工具和依赖库,开发人员需要设置一些环境变量。
这可以通过在命令行终端中设置系统环境变量或者使用脚本文件进行配置来实现。
4.执行初始化构建:在进行实际的编译之前,需要执行一些初始化构建操作。
这包括解压源代码文件、创建构建描述文件、设置编译选项等。
5.编译源代码:编译源代码是整个编译流程的核心步骤。
在此步骤中,构建系统将递归地遍历整个源代码树,并将每个源文件编译成目标文件。
编译过程通常分为以下几个阶段:-预处理:在编译之前,构建系统会首先对源代码进行预处理。
预处理器将处理预处理指令、宏定义等,并将源代码转化为可供编译器识别的形式。
-编译:编译器将源代码编译成汇编语言或者中间代码。
-汇编:汇编器将汇编语言代码转化为机器可执行的二进制指令。
安卓4.4内核模拟器

BlueStacks Beta版的应用模拟器采用了该公司新专利LayerCake技术,可使一些使用ARM特殊指令集(非NEON特殊指令)的应用如《愤怒的小鸟》和《水果忍者》在Windows系统的x86架构PC上正常运行。
此外,Beta版本还加入了对图形硬件加速的支持。
为高端平板设计的应用也可完美运行。
BlueStacks Android应用模拟器已于AMD展开合作,可充分利用AMD APU和GPU平台的高级图形特性。
BlueStacks应用模拟器的Beta版本还加入了10种本地化支持,包括简/繁体中文,设置界面也和真正的Android类似,支持软键盘等方式输入,内置有若干应用商店。
安装方法
我们先来看看如何安装,首先,xp用户需先安装Windows Installer 4.5和.net framework 2.0 SP2,否则会提示出错,我们这里也提供了下载
软件名称:Microsoft Windows Installer4.5简体中文版
软件大小:
43M
下载地址:/softview/SoftView_451.html
软件名称:.NET Framework 2.0 SP2微软官方版
软件大小:
24M
下载地址:/softview/SoftView_65398.html 安装过程中,请耐心等待
安装完成后界面:
BlueStacks视频
新版切换到安卓4.4内核,并且全新支持DirectX,大幅提升机器和应用的兼容性。
台电双系统(Android4.4+Win10)安装教程 _IIII

注意事项:1、在系统安装之前,请仔细阅读本教程的详细步骤;2、此安装教程适用于双系统BIOS没有损坏的情况下,对双系统进行更新;3、安装系统会清空磁盘的所有数据,请预先把重要数据进行备份;4、安装过程大约需时30-40分钟,安装前务必保证机器电量充足,建议预先给机器充满电,再进行操作;5、以下刷机分为Android刷机和Windows10刷机,可根据刷机需求分别单独进行,即需要更新Android固件时,进行Android刷机操作即可,需要更新Windows10系统时,进行Windows10刷机操作即可;准备工作:1、在台电官网,输入机器背壳ID,下载对应的系统包和刷机工具并完成解压;2、准备一个8GB容量或以上的U盘;3、准备一台带外接供电的USB HUB设备;4、准备一套USB键盘;备注:若单刷Android固件,则不用准备2、3、4点所说明的工具;操作步骤:一、刷Android固件1、打开“Android系统升级工具”文件夹,按以下顺序安装:1) 首先安装iSocUSB-Driver-Setup-1.2.0.exe文件;2) 再安装IntelAndroidDrvSetup1.5.0.exe文件;3) 最后安装ManufacturingFlashTool_Setup_6.0.43.exe文件;4) 以上安装成功后,将“升级工具”文件夹中的CUSTOM_CONFIG.INI文件拷贝到C:\ProgramFiles\Intel\Manufacturing Flash T ool目录下。
特别注意事项:a、必须按以上顺序安装升级工具b、安装以上程序时请保持默认安装设置和路径c、以上三个程序按顺序安装成功后,在电脑桌面上会有升级工具快捷图标,如图1所示d、请务必按以上步骤操作,否则将导致升级不成功图12、安装完成后,运行“Manufacturing Flash Tool”后再点击左上角的File选择Settings选项,将SOCDevicds的VID/PID分别改为8087和0A65,将Android devices的VID/PID分别改为8087和09EF,如下图红色方框所示进行设置,保存后关闭量产工具。
Ubuntu12.04下在Android4.0.4源码下载及其编译过程

Ubuntu12.04下在Android4.0.4源码下载及其编译过程一、下载源码1、下载工具repo:https:///tools/repo/在本地目录建个bin的文件夹,进入bin文件夹;通过git下载:1.git clone https:///tools/repo下载完成后,进入repo文件夹,切换到稳定分支:1.git checkout -b stable origin/stable将repo命令所在的目录,即/home/yourname/bin/repo添加到环境变量中:1.export PATH=$PATH:~/bin/repo在本地目录下新建目录:android4.0.4,并进入该文件夹:[html]view plaincopy1.cd ~;mkdir android4.0.4;cd android4.0.4;在文件夹下执行下面命令来下载Android源码:1.repo init -u https:///platform/manifest你也可以直接切换到你想要下的版本的分支,而不是“master”分支:1.repo init -u https:///platform/manifest -b android-4.0.4_r2关于到底是哪个分支,根据自己的情况而定,详情可参照:https:///platform/manifest/如你想下载最新的Android4.1代码,即可将分支名称更换成:android-4.1.1_r4你也可以参照官网的下载方式来下载:/source/downloading.html实验证明,我总是在下载那个repo工具的时候,无法连接到相应的地址。
下载是个漫长的过程,下载完成后的大小大概有14G,所以要提前准备好这么大的空间。
下载完成后的目录大概有这些:如图二、编译源码如果你的电脑的环境经常做开发,那么很多环境应该已经搭建好了,如果没有,可以参照官网:/source/initializing.html这里要提醒的是:用apt-get或者ubuntu软件中直接安装的jdk,jre的时候,编译Android是总是编译不过,出现JDK版本不一致的情况;解决办法如下:到oracle官网中下载jdk:/technetwork/java/javase/downloads/index-jsp-138363.html建议下载这个:jdk-6u35-linux-i586.bin下载完成后,运行得到一个jdk1.6.0_35文件夹,然后,将相应的JAVA环境加到系统环境中,简单的可以这样:1.vi ~/.bashrc在.bashrc文件最后添加:1.JAVA_HOME=/home/clw712/tools/jdk1.6.0_352.CLASSPATH=$JAVA_HOME/lib/3.ANDROID_PRODUCT_OUT=/home/clw712/bin/android/out/target/product/generic4.ANDROID=/home/clw712/bin/android5.ANDROID_SWT=/home/clw712/bin/android/out/host/linux-x86/framework6.PATH=$ANDROID/out/host/linux-x86/bin:$ANDROID/prebuilt/android-arm/kernel/:$JAVA_HOME/bin:$ANDROID_PRODUCT_OUT:$PATH7.8.export PATH JAVA_HOME CLASSPATH ANDROID_PRODUCT_OUT ANDROID_SWT当然上述路径还有后面编译好了,用到的路径,是用来运行emulator的。
Android编译系统(Android.mk文件详解)

Android编译系统(Android.mk⽂件详解)【Android-NDK(Native Development Kit) docs⽂档】NDK提供了⼀系列的⼯具,帮助开发者快速开发C(或C++)的动态库,并能⾃动将so和java应⽤⼀起打包成apk。
Android.mk⽂件是GNU Makefile的⼀⼩部分,它⽤来对Android程序进⾏编译。
因为所有的编译⽂件都在同⼀个 GNU MAKE 执⾏环境中进⾏执⾏,⽽Android.mk中所有的变量都是全局的。
因此,您应尽量少声明变量,不要认为某些变量在解析过程中不会被定义。
⼀个Android.mk⽂件可以编译多个模块,每个模块属下列类型之⼀:1)APK程序⼀般的Android程序,编译打包⽣成apk⽂件2)JAVA库java类库,编译打包⽣成jar⽂件3)C\C++应⽤程序可执⾏的C\C++应⽤程序4)C\C++静态库编译⽣成C\C++静态库,并打包成.a⽂件5)C\C++共享库编译⽣成共享库(动态链接库),并打包成.so⽂,有且只有共享库才能被安装/复制到您的应⽤软件(APK)包中。
可以在每⼀个Android.mk file 中定义⼀个或多个模块,你也可以在⼏个模块中使⽤同⼀个源代码⽂件。
编译系统为你处理许多细节问题。
例如,你不需要在你的 Android.mk 中列出头⽂件和依赖⽂件。
编译系统将会为你⾃动处理这些问题。
这也意味着,在升级 NDK 后,你应该得到新的toolchain/platform⽀持,⽽且不需要改变你的 Android.mk ⽂件。
注意,NDK的Anroid.mk语法同公开发布的Android平台开源代码的Anroid.mk语法很接近,然⽽编译系统实现他们的⽅式却是不同的,这是故意这样设计的,可以让程序开发⼈员重⽤外部库的源代码更容易。
在描述语法细节之前,咱们来看⼀个简单的"hello world"的例⼦,⽐如,下⾯的⽂件:sources/helloworld/helloworld.csources/helloworld/Android.mk'helloworld.c'是⼀个 JNI 共享库,实现返回"hello world"字符串的原⽣⽅法。
【转】Android编译系统详解(三)——编译流程详解

【转】Android编译系统详解(三)——编译流程详解原⽂⽹址:本⽂原创作者: 欢迎转载,请注明出处和1.概述编译Android的第三步是使⽤mka命令进⾏编译,当然我们也可以使⽤make –j4,但是推荐使⽤mka命令。
因为mka将⾃动计算-j选项的数字,让我们不⽤纠结这个数字到底是多少(这个数字其实就是所有cpu的核⼼数)。
在编译时我们可以带上我们需要编译的⽬标,假设你想⽣成recovery,那么使⽤mka recoveryimage,如果想⽣成ota包,那么需要使⽤mka otapackage,后续会介绍所有可以使⽤的⽬标。
另外注意有⼀些⽬标只是起到修饰的作⽤,也就是说需要和其它⽬标⼀起使⽤,共有4个⽤于修饰的伪⽬标:1) showcommands 显⽰编译过程中使⽤的命令2) incrementaljavac⽤于增量编译java代码3) checkbuild⽤于检验那些需要检验的模块4) all如果使⽤all修饰编译⽬标,会编译所有模块研究Android编译系统时最头疼的可能是变量,成百个变量我们⽆法记住其含义,也不知道这些变量会是什么值,为此我专门做了⼀个编译变量的参考⽹站,你可以在该⽹站查找变量,它能告诉你变量的含义,也会给出你该变量的⽰例值,另外也详细解释了编译系统⾥每个Makefile的作⽤,这样你在看编译系统的代码时不⾄于⼀头雾⽔。
编译的核⼼⽂件是和,main.mk主要作⽤是检查编译环境是否符合要求,确定产品配置,决定产品需要使⽤的模块,并定义了许多⽬标供开发者使⽤,⽐如droid,sdk等⽬标,但是⽣成这些⽬标的规则主要在Makefile⾥定义,⽽内核的编译规则放在build/core/task/kernel.mk我们将先整体介绍main.mk的执⾏流程,然后再针对在Linux上编译默认⽬标时使⽤的关键代码进⾏分析。
Makefile主要定义了各个⽬标的⽣成规则,因此不再详细介绍它的执⾏流程,若有兴趣看每个⽬标的⽣成规则,可查看2. main.mk执⾏流程2.1 检验编译环境并建⽴产品配置1) 设置Shell变量为bash,不能使⽤其它shell2) 关闭make的suffix规则,rcs/sccs规则,并设置⼀个规则: 当某个规则失败了,就删除所有⽬标3) 检验make的版本,cygwin可使⽤任意版本make,但是linux或者mac只能使⽤3.81版本或者3.82版本4) 设置PWD,TOP,TOPDIR,BUILD_SYSTEM等变量,定义了默认⽬标变量,但是暂时并未定义默认⽬标的⽣成规则5) 包含,该makefile定义了两个⽬标help和out, help⽤于显⽰帮助,out⽤于检验编译系统是否正确6) 包含,config.mk作了很多配置,包括产品配置,包含该makefile后,会建⽴输出⽬录系列的变量,还会建⽴PRODUCT系列变量,后续介绍产品配置时,对此会有更多详细介绍7) 包含,该makefile会包含所有⼯程的CleanSpec.mk,写了CleanSpec.mk的⼯程会定义每次编译前的特殊清理步骤,cleanbuild.mk会执⾏这些清除步骤8) 检验编译环境,先检测上次编译结果,如果上次检验的版本和此次检验的版本⼀致,则不再检测,然后进⾏检测并将此次编译结果写⼊2.2 包含其它makefile及编译⽬标检测1) 如果⽬标⾥含有incrementaljavac,那么编译⽬标时将⽤incremental javac进⾏增量编译2) 设置EMMA_INSTRUMENT变量的值,emma是⽤于测试代码覆盖率的库3) 包含,该makefile定义了许多辅助函数4) 包含,该makefile定义了⾼通板⼦的⼀些辅助函数及宏5) 包含,该makefile定义了优化dex代码的⼀些宏6) 检测编译⽬标⾥是否有user,userdebug,eng,如果有则告诉⽤户放置在buildspec.mk或者使⽤lunch设置,检测TARGET_BUILD_VARIANT变量,看是否有效7) 包含, PDK主要是能提⾼现有设备升级能⼒,帮助设备制造商能更快的适配新版本的android2.3 根据TARGET_BUILD_VARIANT建⽴配置1) 如果编译⽬标⾥有sdk,win_sdk或者sdk_addon,那么设置is_sdk_build为true2) 如果定义了HAVE_SELINUX,那么编译时为build prop添加属性ro.build.selinux=13) 如果TARGET_BUILD_VARIANT是user或者userdebug,那么tags_to_install += debug 如果⽤户未定义DISABLE_DEXPREOPT为true,并且是user模式,那么将设置WITH_DEXPREOPT := true,该选项将开启apk的预优化,即将apk分成odex代码⽂件和apk资源⽂件4) 判断enable_target_debugging变量,默认是true,当build_variant是user时,则它是false。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
编译系统介绍
注意: ramdisk(手机根目录或者/bin 目录)中的文件不建议使用 adb push,需要重新下载 bootimage
1.4 编译的成果
Android 的编译输出路径为 out,编译成果如下图
Android4.4 编译系统介绍
其中最重要的目录就是 out/target/product/<项目名>,这里存放着用于下载的所有 bin 和 image 文 件, 包括 fdl1.bin fdl2.bin u-boot-spl-16k.bin u-boot.bin boot.img system.img usderdata.img recovery.img cache.img。
A-1
Android4.4 编译系统介绍
第1章 代码编译的方法
1.1 代码和编译环境的准备
首先,客户需要解压完整的平台代码包,代码包由 CPM 向客户进行发布,其中包含代码,bin 档和开发调试工具等。其中 AP 侧代码由开源代码包和非开源库文件两部分组成 开源代码包部分一般命名为 idh.code,以 rar 或者 tgz 压缩格式提供 非开源库文件一般以 proprietories-<平台名>来命名,以 rar 或者 tgz 压缩格式提供 客户解压之后,需要将库文件的内容拷贝到代码包的 vendor/sprd/proprietories/目录下,如 果客户在同一个版本下开发多个平台的项目,则需要将各个平台对应的库文件解压后都拷贝到该目 录下,这样就完成了平台代码环境的准备 然后, 客户还需要检查自己的编译环境, google 推荐使用 64 位 ubuntu 的系统。 展讯推荐 11.04 的版本。 10.04,10.10,11.10,12.04 等版本也可以使用,可以使用 lsb_release -a 命令来查看 ubuntu 的具体版本号 需要安装 1.6 版本的 jdk,可以在 google 或者 sun 的官方网站获得对应的 java 支持,可以使 用 java –version 命令来查看 jdk 的版本 Google 推荐的 python 版本是 2.6 或者 2.7,可以在 获得,可以使用 python --version 来查看 python 的版本 根据 ubuntu 版本的不同,可能还需要一些其它的编译支持工具,完整的工具包在下面的网址可 以找到 /source/initializing.html 如果是 11.04 的版本,可以在用下面的命令安装支持 $ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev
前
文档说明
言
本文档简要介绍了展讯公司 Android4.4 平台的编译系统及其使用方法。
阅读对象
本文档针对于所有展讯公司 Android4.4 平台客户软件工程师。
内容介绍
本文档包括三个章节,分别为: 第一章:编译方法介绍 第二章:新建工程和配置介绍 第三章:其他相关配置
文档约定
本文档采用下面醒目标志来表示在操作过程中应该特别注意的地方。
Android4.4 编译系统介绍
输入对应的数字选择需要编译的项目, 目前展讯 Android4.4 上的参考项目是 sp7715ea (Dolphin emmc 方案)或者 sp7715ga(Dolphin nand 方案),而 base 或 plus 关键字分别代表单卡或者双卡方 案。这里建议客户选择最接近自己项目形态的参考项目。 在选择完编译项目后,使用 make 命令来进行编译,如果编译使用的机器是支持多线程编译的,则可以使用-j 选项来加快编译的 速度,比如
注意: 提醒操作中应注意的事项。
相关文档
目
录
第 1 章 代码编译的方法 ........................................................................................................................... A-2 1.1 代码和编译环境的准备................................................................................................................. A-2 1.2 完成一次全新的编译..................................................................................................................... A-3 1.3 单项编译和其它编译命名............................................................................................................. A-5 1.4 编译的成果..................................................................................................................................... A-6 第 2 章 新建和配置一个项目 ................................................................................................................... A-9 2.1 新建项目编译配置文件................................................................................................................. A-9 2.2 配置新项目的 kernel 部分........................................................................................................ A-10 2.3 配置新项目的 u-boot 部分........................................................................................................ A-11 2.4 添加新项目的产品信息配置....................................................................................................... A-12 第 3 章 其它编译相关的内容 ................................................................................................................. A-13 3.1 OTA 包的编译................................................................................................................................ A-13 3.2 如何制作多国语言版本............................................................................................................... A-13 附录 A Revision History ..................................................................................................................... A-14
Android4.4 编译系统介绍
lib32z-dev
libgl1-mesa-dev
g++-multilib
mingw32
tofrodos
python-markdown
\
libxml2-utils xsltproc 在完成的代码和编译环境的准备之后,就可以开始进行代码的编译工作了
1.2 完成一次全新的编译
Android4.4 编译系统介绍
Version: 1.5 Date: 2014-03-24
重要声明
版权声明
本文档中的任何内容受《中华人民共和国著作权法》的保护,版权所有 © 2010, 展讯通信有限公司,保留所有权利,但注明引用其他方的内容除外。
商标声明
展讯通信有限公司和展讯通信有限公司的产品是展讯通信有限公司专有。在提及 其他公司及其产品时将使用各自公司所拥有的商标, 这种使用的目的仅限于引用。
Android4.4 编译系统介绍
make –j24 -j 之后的数值由编译电脑的 cpu 数决定。一次全新的编译根据编译服务器的性能大约需要几十 分钟到几个小时不等。
1.3 单项编译和其它编译命名
在完成一次全编之后,在不改变当前编译项目的前提下,修改代码后可以使用单项的编译来编 译对应的部分,加快开发的速度。
不作保证声明
展讯通信有限公司不对此文档中的任何内容作任何明示或暗示的陈述或保证,而 且不对特定目的的适销性及适用性或者任何间接、特殊或连带的损失承担任何责 任。
保密声明