Android常用的编译命令

本文介绍了Android系统平台开发常用命令,如make -jX可编译系统并生成镜像,XX为CPU核数;make snod可重新生成镜像;make cts用于编译CTS套机等。还说明了在Android源码根目录下编译Android的步骤,包括设置环境、选择目标和编译系统。

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

1.make -jX X表示数字,这个命令将编译Android系统并生成镜像,XX表示可以使用到的CPU核数,这在配置好的电脑上特别有用,公司的16核ubuntu服务器执行make -j16只要不到20分钟,而双核PC上需要4个小时! 2.make snod 这条命令将重新生成镜像,消耗的时间很少,类似WinCE的makeimg过程,如果你修改了一些数据文件(如音乐、视频)等文件时比较有用。 3.make cts 这条命令将编译CTS套机,编译出的结果放在out目录对应版的data/app目录下面。CTS测试时有用 4.make installclean 这条命令清除out目录下对应板文件夹中的内容,也就是相当于make clean,通常如果改变了一些数据文件(如去掉)、最好执行以下make installclean,否则残留在out目录下的还会被打包进去。 5.mm/mm -B 开发调试中最喜欢这条命令了,在修改了的目录下执行这条命令,就能智能地进行编译,输出的文件在通过adb推送到目标机,可以很方便地调试。 6.make sdk 这条命令可以生成可发布的SDK,目前还没试过,据说需要JDK1.57.make Setting 可以单独编译setting这个模块,目前还没试,猜想是不是可以单独编译Email、Music这些模块 8.make bootimage 用这条命令可以生成boot.img,这个镜像文件中包含Linux Kernel,Ram disk,生成的boot.img只能通过fastboot进行烧写,这在只修改了Linux内核的时候有用 9.make systemimage 同上,不过是生成system.img用的。

 

 

在Android源码根目录下,执行以下三步即可编译android: source build/envsetup.sh #这个脚本用来设置android的编译环境; lunch #选择编译目标 make #编译android整个系统 android 系统平台开发长用到的命令 1.在 android 目录 或者 alps 目录下 source build/envsetup.sh 2.lunch命令其实是定义在build/envsetup.sh文件中的函数lunch提供的 (其中里面还提供了好多其他函数,以后慢慢补充) ========== m mm mmm make ================= 3. m(是对make命令的简单封装) 用来编译所有模块 4. make: 不带任何参数则是编译整个系统;    make MediaProvider (在展讯的平台我用过这个命令)单个模块编译,会把该模块及其依赖的其他模块一起编译(会搜索整个源代码来定位MediaProvider模块所使用的Android.mk文件,还要判断该模块依赖的其他模块是否有修改) make installclean 这条命令清除out目录下对应板文件夹中的内容,也就是相当于make clean,通常如果改变了一些数据文件(如去掉)、最好执行以下make installclean,否则残留在out目录下的还会被打包进去。 make bootimage 生成 boot.img make systemimage 生成 system.img make snod 这条命令将重新生成镜像,消耗的时间很少,类似WinCE的makeimg过程,如果你修改了一些数据文件(如音乐、视频)等文件时比较有用。 make cts 这条命令将编译CTS套机,编译出的结果放在out目录对应版的data/app目录下面。CTS测试时有用 5. mmm packages/providers/MediaProvider # 编译指定目录下的模块,但不编译它所依赖的其它模块; mmm -B 强制重新编译 6. mm # 编译当前目录下的模块,它和mmm一样,不编译依赖模块; mm -B 强制重新编译 7. mma # 编译当前目录下的模块及其依赖项 . mma -B 强制重新编译

 

1.make -jX X表示数字,这个命令将编译Android系统并生成镜像,XX表示可以使用到的CPU核数,这在配置好的电脑上特别有用,公司的16核ubuntu服务器执行make -j16只要不到20分钟,而双核PC上需要4个小时! 2.make snod 这条命令将重新生成镜像,消耗的时间很少,类似WinCE的makeimg过程,如果你修改了一些数据文件(如音乐、视频)等文件时比较有用。 3.make cts 这条命令将编译CTS套机,编译出的结果放在out目录对应版的data/app目录下面。CTS测试时有用 4.make installclean 这条命令清除out目录下对应板文件夹中的内容,也就是相当于make clean,通常如果改变了一些数据文件(如去掉)、最好执行以下make installclean,否则残留在out目录下的还会被打包进去。 5.mm/mm -B 开发调试中最喜欢这条命令了,在修改了的目录下执行这条命令,就能智能地进行编译,输出的文件在通过adb推送到目标机,可以很方便地调试。 6.make sdk 这条命令可以生成可发布的SDK,目前还没试过,据说需要JDK1.57.make Setting 可以单独编译setting这个模块,目前还没试,猜想是不是可以单独编译Email、Music这些模块 8.make bootimage 用这条命令可以生成boot.img,这个镜像文件中包含Linux Kernel,Ram disk,生成的boot.img只能通过fastboot进行烧写,这在只修改了Linux内核的时候有用 9.make systemimage 同上,不过是生成system.img用的。

转载于:https://www.cnblogs.com/jiangzhaowei/p/11169651.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值