Makefile学习笔记

来源:互联网 发布:自己开淘宝店怎么发货 编辑:程序博客网 时间:2024/06/08 18:34

Makefile中的@:
通常,make会把其要执行的命令行在命令执行前输出到屏幕上。当我们用“@”字符在命令行前,那么,这个命令将不被make显示出来,最具代表性的例子是,我们用这个功能来像屏幕显示一些信息。如: 
@echo 正在编译XXX模块...... 
当make执行时,会输出“正在编译XXX模块......”字串,但不会输出命令,如果没有“@”,那么,make将输出: 
echo 正在编译XXX模块...... 
正在编译XXX模块...... 
如果make执行时,带入make参数“-n”或“--just-print”,那么其只是显示命令,但不会执行命令,这个功能很有利于我们调试我们的Makefile,看看我们书写的命令是执行起来是什么样子的或是什么顺序的。 
而make参数“-s”或“--slient”则是全面禁止命令的显示。 

Makefile中的特殊变量和常用参数:
特殊变量:
$@: 规则中的目标名(也就是规则名)。
$<:  规则中的依赖项目,只代表规则所有依赖项目中的第一项!
$^:  规则中所有的依赖项目。
$?:  规则中时间新于目标的依赖项目


常用参数:
-f :       指定makefile的名称,这样,就可以不用makefile做为规则文件的名字了。
-i :       使make程序忽略运行时的错误,继续运行。
-v:       显示make程序的版本号。
--help: 显示make程序的参数帮助。
0 0
原创粉丝点击