Android编译中m、mm、mmm的区别

在Android编译中,m、mm、mmm是三个常用的命令,用于进行编译和构建Android源代码。它们的区别如下:

1. m命令:

- m命令是最常用的编译命令,用于编译单个模块(module)。

- 它在源代码根目录下执行,通常格式为:`$ make `。

- ``可以是一个具体的模块名,也可以是一个通配符。

例如,要编译frameworks/base模块,可以使用以下命令:

```

$ cd

$ m frameworks/base

```

编译一个模块时,m会递归地处理依赖关系,编译并链接依赖的库和模块,并将生成的二进制文件放在out目录中。

2. mm命令:

- mm命令是m命令的一种扩展形式,它用于编译一个或多个模块。

- 它在源代码根目录下执行,通常格式为:`$ ma(make) module_name`。

- module_name可以是一个具体的模块名,也可以是一个通配符。

例如,要编译所有frameworks下的模块,可以使用以下命令:

```

$ cd

$ mm frameworks/*

```

mm命令会递归地编译指定的模块及其依赖的模块,并将生成的二进制文件放在out目录中。

3. mmm命令:

- mmm命令是mm命令的进一步扩展,它用于编译一个或多个模块,并指定其子模块。

- 它在源代码根目录下执行,通常格式为:`$ mmm module_name:sub_module_name`。

例如,要编译frameworks/base模块的core子模块,可以使用以下命令:

```

$ cd

$ mmm frameworks/base:core

```

mmm命令会递归地编译指定的模块及其依赖的模块,并将生成的二进制文件放在out目录中。

这些命令在编译过程中会执行一系列的操作,包括依赖解析、编译源代码、生成目标文件、链接库和模块,最终生成可执行文件或库文件。通过使用这些命令,开发人员可以更灵活地控制编译过程,只编译需要的模块,提高编译效率。

实际使用中,开发人员可以根据需求选择合适的编译命令。例如,如果只需要编译单个模块,可以使用m命令;如果需要同时编译多个模块,可以使用mm命令;如果需要编译模块的指定子模块,可以使用mmm命令。

总结来说,m、mm、mmm命令是一系列用于编译和构建Android源代码的命令,它们的区别在于编译的粒度和方便程度,开发人员可以根据需求灵活选择使用。 如果你喜欢我们三七知识分享网站的文章, 欢迎您分享或收藏知识分享网站文章 欢迎您到我们的网站逛逛喔!https://www.37seo.cn/

点赞(4) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部