makefile编写规则有哪些

在Makefile中,常见的规则有以下几种:

显式规则(Explicit Rule):指定一个或多个目标文件和依赖文件,并给出生成目标文件的命令。例如:

target: dependencies
command

隐式规则(Implicit Rule):根据文件名的后缀和一些约定规则,自动推导出生成目标文件的命令。例如,可以使用以下规则来生成目标文件 foo.o

%.o: %.c
command

伪目标规则(Phony Rule):定义一个不对应任何实际文件的目标,用于执行一些特定的动作。例如:

.PHONY: target
target:
command

文件搜索路径规则(VPATH Rule):指定搜索依赖文件时的搜索路径。例如:

VPATH = src include

模式规则(Pattern Rule):类似于隐式规则,可以根据文件名的模式匹配来生成目标文件。例如:

%.o: %.c
command

条件规则(Conditional Rule):根据条件来决定是否执行某个规则。例如:

ifeq ($(condition),true)
target: dependencies
command
endif

函数规则(Function Rule):使用Makefile中提供的函数来生成目标文件的命令。例如:

target: $(function arguments)
command

以上是一些常见的Makefile编写规则,它们可以帮助我们定义和控制程序的编译和构建过程。

阅读剩余
THE END