android编译系统 makefile
来源:互联网 发布:安卓优化软件 知乎 编辑:程序博客网 时间:2024/05/01 03:20
android最顶层的目录结构如下:
.
|-- Makefile (全局的Makefile)
|-- bionic (Bionic含义为仿生,这里面是一些基础的库的源代码)
|-- bootloader (引导加载器)
|-- build (build目录中的内容不是目标所用的代码,而是编译和配置所需要的脚本和工具)
|-- dalvik (JAVA虚拟机)
|-- development (程序开发所需要的模板和工具)
|-- external (目标机器使用的一些库)
|-- frameworks (应用程序的框架层)
|-- hardware (与硬件相关的库)
|-- kernel (Linux2.6的源代码)
|-- packages (Android的各种应用程序)
|-- prebuilt (Android在各种平台下编译的预置脚本)
|-- recovery (与目标的恢复功能相关)
`-- system (Android的底层的一些库)
本文将要分析的是build目录下的makefile和shell文件,
/build/core/definitions.mk
定义了一些函数控制编译范围:
all-makefiles-under
first-makefiles-under
all-subdir-makefiles
all-named-subdir-makefiles
/bulid/target/product/generic.mk 把工程编译到系统中
PRODUCT_PACKAGES +=
=====================================
make的内嵌函数:提供了处理文件名、变量、文本和命令的方法
比如:addprefix, addsuffix
详见:http://www.linuxsir.org/main/doc/gnumake/GNUmake_v3.80-zh_CN_html/make-08.html
=====================================编译在Android环境下运行的可执行文件:
在源文件目录下创建android.mk,内容如下:
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := helloaLOCAL_SRC_FILES := hello-a.cinclude $(BUILD_EXECUTABLE) //指定我们现在要生成一个可执行的文件
在Makefile文件中打印Log:
$(warning xxxxx) //或者$(error xxxxx) //输出变量方式为:$(warning $(XXX))
- android编译系统 makefile
- android编译系统的makefile
- Android系统编译之Makefile
- android编译系统makefile(Android.mk)写法
- android编译系统makefile(Android.mk)写法
- android编译系统makefile(Android.mk)写法
- android编译系统makefile(Android.mk)写法
- android编译系统makefile(Android.mk)写法
- android编译系统makefile(Android.mk)写法
- android编译系统makefile(Android.mk)写法
- android编译系统makefile(Android.mk)写法
- android编译系统makefile(Android.mk)写法
- android编译系统makefile(Android.mk)写法
- Android编译系统makefile(Android.mk)写法
- Android编译系统makefile(Android.mk)写法
- Android编译系统makefile(Android.mk)说明
- android编译系统makefile(Android.mk)写法
- android编译系统makefile(Android.mk)写法
- 【项目经验】cocos2D场景切换方式总汇
- poj1185 状态dp
- POJ 2771 Guardian of Decency (最大独立集Hungary)
- 我脑袋里面的未来数码设备
- Java基础23天--01/02--网络编程
- android编译系统 makefile
- ORACLE SQL性能优化系列
- Java下XML Schema的SOM模型
- MyISAM InnoDB 区别
- UDP 穿透NAT解析 TCP 穿透NAT解析(举了一个接电话的例子)
- .lib和.dll文件的区别
- 使用windbg分析dmp文件定位程序bug
- [技术分享]WPAD 怎么不工作了
- framework not found AudioUnit