make命令 – 编辑内核或模块

  文档编辑

make命令是GNU的工程化编译工具,用于编译众多相互关联的源代码文件,还可以编辑内核或模块,以实现工程化的管理,提高开发效率。

当make命令第一次执行时,它扫描Makefile找到目标以及其依赖。如果这些依赖自身也是目标,继续为这些依赖扫描Makefile建立其依赖关系,然后编译它们。一旦主依赖编译之后,然后就编译主目标。

语法格式:  make [参数]

常用参数:

-r禁用内置的隐含规则
-B始终无条件make所有目标
-b忽略兼容性
-C<目录>更改为指定目录
-L在符号链接和目标之间使用最后的修改时间
-n实际上不运行任何命令,只显示出来
-o<文件>不编译指定的文件
-e环境变量覆盖makefile
-d显示打印调试信息
-i从命中忽略错误
-w显示当前目录
-t创建目标,而不是改造它们
-p显示make的内部数据库
-q安静模式
-R禁用内置变量设置
-s不回显命令
-I<目录>搜索指定目录中包含的makefile
-f<文件>读取指定文件作为makefile文件
-k当有些目标不能make下去时,继续执行
– -debug=<标记>显示调试信息的各种类型
-j<作业编号>指定工作编号的作业一次完成
-l<负载>不要启动多个任务,除非低于指定负载
-S关闭-k
– -no-print-directory关闭-w,即使它被打开
– -warn-undefined-variables当一个未定义的变量被引用时发出警告
-W<文件>指定目标文件

参考实例

读取指定文件作为makefile文件:

[root@linuxvip ~]# make -f my_linuxvip

为make命令提供不同的目录路径:

[root@linuxvip ~]# make -C /linuxvip/

打印调试信息:

[root@linuxvip ~]# make -d | more