AOSP 4.2.4 编译经验分享
4星 · 超过85%的资源 需积分: 3 162 浏览量
更新于2024-09-14
收藏 1.95MB TXT 举报
"这篇文档记录了Android 4.2(平台版本代码名称AOSP)的编译过程,其中提到了在编译时遇到的内存需求问题,以及编译选项和环境配置的细节。"
Android 4.2编译过程是一个复杂且资源密集型的任务,特别是对于内存的需求非常高。在描述中提到,即使是使用`make -j4`这样的并行编译选项,并配备3GB内存的系统也可能无法顺利编译,因此建议直接使用`make`命令,尽管这样会降低编译速度。这表明Android 4.2的源码编译对硬件性能有较高的要求。
在提供的部分内容中,可以看到一些编译时的环境变量和设置:
1. `PLATFORM_VERSION_CODENAME=AOSP`:表示这个版本基于Android开源项目(AOSP)。
2. `PLATFORM_VERSION=4.2.42.42.42`:可能是一个错误,通常这里应显示单一的版本号,如4.2。
3. `TARGET_PRODUCT=full`:指示目标产品是一个完整的Android系统映像。
4. `TARGET_BUILD_VARIANT=eng`:表示这是工程版本(build variant),适用于开发者和测试,而不是最终用户。
5. `TARGET_BUILD_TYPE=release`:虽然变量名为`eng`,但`TARGET_BUILD_TYPE`设置为`release`,可能意味着这是一个用于发布前的编译。
6. `TARGET_BUILD_APPS=`:没有指定特定的应用程序进行编译。
7. `TARGET_ARCH=arm`:目标架构是ARM处理器。
8. `TARGET_ARCH_VARIANT=armv7-a`:更具体的ARM变体,支持ARMv7指令集。
9. `HOST_ARCH=x86`:编译主机的架构是x86,即通常的Intel或AMD处理器。
10. `HOST_OS=linux`:编译主机运行的是Linux操作系统。
11. `HOST_OS_EXTRA=Linux-2.6.38-8-generic-x86_64-with-Ubuntu-11.04-natty`:具体到Linux内核版本和Ubuntu发行版。
12. `HOST_BUILD_TYPE=release`:主机端的构建类型也为发布版本。
13. `BUILD_ID=OPENMASTER`:可能是构建标识符或分支名。
14. `OUT_DIR=out`:编译输出目录。
接着,可以看到一系列的`PRODUCT_COPY_FILES`,这是Android构建系统的一部分,用于将指定的文件复制到目标系统的特定位置。在这个例子中,是将音频文件从`frameworks/base/data/sounds/effects/ogg`目录复制到系统的媒体音频UI路径下,尽管这里标记为`ignored.`,可能是因为这些文件已经在目标系统中存在或者不需要更新。
Android 4.2的编译过程涉及到多个环境变量的设定,以及对目标设备架构、版本和编译选项的考虑。同时,编译过程中还处理了产品特定的文件复制操作,这些都是构建一个完整Android系统的重要步骤。对于开发者来说,理解这些细节有助于优化编译流程和解决编译过程中遇到的问题。
353 浏览量
2014-03-19 上传
2023-08-28 上传
2023-09-09 上传
2023-06-12 上传
2023-05-24 上传
2023-07-29 上传
2023-03-10 上传
2023-12-14 上传
wxhjk
- 粉丝: 3
- 资源: 14
最新资源
- WebLogic集群配置与管理实战指南
- AIX5.3上安装Weblogic 9.2详细步骤
- 面向对象编程模拟试题详解与解析
- Flex+FMS2.0中文教程:开发流媒体应用的实践指南
- PID调节深入解析:从入门到精通
- 数字水印技术:保护版权的新防线
- 8位数码管显示24小时制数字电子钟程序设计
- Mhdd免费版详细使用教程:硬盘检测与坏道屏蔽
- 操作系统期末复习指南:进程、线程与系统调用详解
- Cognos8性能优化指南:软件参数与报表设计调优
- Cognos8开发入门:从Transformer到ReportStudio
- Cisco 6509交换机配置全面指南
- C#入门:XML基础教程与实例解析
- Matlab振动分析详解:从单自由度到6自由度模型
- Eclipse JDT中的ASTParser详解与核心类介绍
- Java程序员必备资源网站大全