Android 编译时:m、mm、mmm、mma、mmma的区别

本文介绍了如何使用m、mm、mma、mmm、mmma命令编译Android代码。首先需要执行source build/envsetup.sh初始化环境,然后通过lunch选择工程,并进入相应模块目录。mm用于编译当前目录下的模块,mma会编译包括依赖在内的所有模块,mmm针对指定路径的模块编译,mmma同样包含依赖。-B选项确保编译所有文件,-j2指定位数的编译线程。错误信息通过2>&1输出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

要使用m、mm、mma、mmm、mmma 命令对Android代码进行模块编译,需要先执行如下命令初始化环境。

#source  build/envsetup.sh         要确保当前根目录下有envsetup.sh脚本文件
#lunch   ...                         对工程的选择
#cd (要编译模块所在的目录)
#mm(mma、mmm、mmma) -B -j2  2>&1    开始编译模块

注:-B表示编译模块的所有文件,-j2表示编译的时候开启两个线程
2>&1表示将错误切换到输出(输入为0,输出为1,错误为2)。

envsetup.sh脚本文件里包含vendorsetup.sh 、lunch、 m mm mmm的定义

m:编译整个安卓系统
mm:编译当前目录下的所有模块,但不编译它们的依赖,当前目录下需要有Android.mk这个makefile文件,否则就往上找最近的Android.mk文件。
mma: 包括编译其依赖。
mmm:编译指定路径下的模块,但不编译它们的依赖,需要指定模块路径(必须为该模块的根目录,包含Android.mk的目录)。
mmma:包括编译其依赖。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值