您的位置:首页 > 其它

Make选项及makefile常用变量

2014-02-16 22:11 811 查看
Make命令可以带几种参数: 标志, 宏定义, 描述文件名和目标文件名, 标准形式为:

Make [flags] [macro definitions] [targets]

在unix下, flags包含:

-f file 指定file文件为描述文件. 如果file参数为"-", 描述文件指向标准输入, 如果没有"-f", 则系统默认当前目录下makefile或Makefile为描述文件. (ps: 在linux下, GNU Make按照GNUmakefile, makefile, Makefile查找默认描述文件)

-i 忽略命令执行返回的出错信息

-s 沉默模式, 在执行前不输出相应的命令行信息

-r 禁止build-in规则

-n 非执行模式, 输出所有执行命令,但不执行

-t 更新目标文件

-q make将根据目标文件是否更新返回0或非0

-p 输出所有宏定义和目标文件描述

-d debug模式,输出有关文件和检测时间的详细信息

在linux下, 有些选项不同于unix, 如下:

-c dir 在读取makefile之前改变到指定的目录dir

-I dir 当包含其他makefile时,利用改选项指定搜索目录

-h help文档,显示所有的make选项

-w 在处理makefile之前和之后, 都显示工作目录

宏定义将覆盖makefile文件种的宏定义.

target指定要编译的目标,并且允许同时定义多个编译目标,执行时按照从左向右的顺序依次编译target中指定的目标文件. 如果没有指定target,则命令默认描述文件(如makefile)中的第一个目标.

Makefile常用变量(GNU):

$@ 目标文件名

$< dependences中的第一项名称

$^ 所有dependences中的项名, 各项名以空格分开

$? 所有dependences中比目标新的项名, 各项名以空格分开

"@"符号禁止打印输出所在命令行,也就是说所有以@开头的命令行只执行,而不被打印输出.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: