makefile 中$?的作用
时间: 2023-08-19 21:06:10 浏览: 156
makefile文件中伪目标all的作用以及解析
在 Makefile 中,$? 是一个自动变量,表示所有比目标新的依赖文件的列表。它用于指代需要更新的依赖项列表中的文件。当目标文件的修改日期早于任何一个依赖文件时,$? 会返回这些新的依赖文件列表。
通常在规则的命令中使用 $? 可以方便地执行针对新的依赖文件的操作。例如,可以使用 $? 来编译或处理最新更新的文件,确保目标文件与其依赖项保持同步。
下面是一个简单的示例:
```
target: dependency1 dependency2
command1
command2 $?
```
在上述示例中,如果 dependency1 或 dependency2 中有任意一个文件被修改,那么 command2 将会执行,并且 $? 将会展开为被修改的文件列表。
阅读全文