android的编译系统

android的编译系统

ID:30774030

大小:106.00 KB

页数:10页

时间:2019-01-03

android的编译系统_第1页
android的编译系统_第2页
android的编译系统_第3页
android的编译系统_第4页
android的编译系统_第5页
资源描述:

《android的编译系统》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Android的编译系统分类:Android系统开发2011-02-2211:27810人阅读评论(0)收藏举报一、Makefile的主要流程以下主耍流程都在build/core/main.mk里安排。初始化相关的参数设置(buildspec.mk>envselup.mk、config.mk)检测编译环境和目标环境决定目标product读取product的配置信息及0标平台信息清除输出目录检查版本号读取Board的配置读取所有Module的配置根据配置产生必要的规则(build/core/Makefile)主要配置文件:build/core/config.m

2、kbuild/core/envsetup.mkbuild/target/productbuild/target/boardbuild/core/combogeneratedirconfigandsoonproductconfigboardconfigbuildflagsconfig这里解释下这里的board和productobonid主要是设计到硬件芯片的配置,比如是否提供硬件的某些功能,比如说GPU等等,或者芯片支持浮点运算等等。product是指针对当前的芯片配置定义你将要生产产品的个性配置,主要是指APK方面的配置,哪些APK会包含在哪个product

3、屮,哪些APK在当前product中是不提供的。config.mk是一个总括性的东西,它里面定义了各种module编译所需要使用的HOST工具以及如何来编译各种模块,比如说BUILT_PREBUILT就定义了如何来编译预编译模块。envsetup.mk主要会读取由envsetup.sh写入环境变量中的一些变量来配置编译过程中的输出目录,combo里面主要定义了各种Host和Target结合的编译器和编译选项。配置部分主要完成以下几个工作:a)基于Android产品的配置(productconfig):选择构建安装的运行程序(userpackage)b)设置t

4、arget等相关变量TARGET_ARCH,TARGET_OS,TARGET_BUILD_TYPE,TARGET_PREBUILT_TAGc)根据编译环境设置host等相关变量HOST_OS,HOST_ARCH,HOST_BU1LD_TYPE,HOST_PREBUILT_TAGd)编译target±运行程序所需的T具链及编译参数设置,如linux-arm-cc,cflag,include目录等。e)编译host±运行程序所需的工具链及编译参数设置。buildspec.mk(ifexist)versiondefaults.mk下图简要介绍Androidbui

5、ldsystem的配置部分的主要构成及相互关系。nodefns.mkbuild/targeVAndroidProdud[envsetupmkdevice目录下的AndroidProt'product_config.mkproductmkj

6、n£ludegombo下对应的mKS:件com

7、bo/selectmk根据TARGET_OS和TARGET_ARCHcombotarget:=TARGET选^includecombo下对应的m©件build/core/cleanbuild.mk二、初始化参数设置在main.mk里,简单设置儿个主要编译路径的变量后,来到config.mk:config.mk其中设置了源文件的一系列路径,包括头文件、库文件、服务、API已经编译工具的路径。(前36行)从40行开始,定义一些编译模块的生成规则:除了CLEAR.VARS是清楚本地变量之外,其他所有的都对应了一种模块的生成规则,每一个本地模块最后都会includ

8、e其屮的一种来生成目标模块。T^■k■kK■■・KkK▼■■穴■>▼rTk■ifW>▼▼▼vT^■■■■KWPVW#BuildsysteminternalfilesBUILDCOMBOS:«$(BUIlD^SYSTEM)/COfTbOCLEARVARS—$(BUILD^SYSTEM)/clearvars.nkBUILDHOSTSTATICLIBRARY*$(BUILD.SYSTEM)/hoststaticlibrary.nkBUILDHOSTSHAREDLIBRARY*$(BUILD^SYSTEM)/hostsharedlibrary.mkBUILDSTAT

9、ICLIBRARY:^$(BUILD^SYSTEM)

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。