Makefile伪目标是什么
时间: 2023-08-10 21:07:36 浏览: 134
在 Makefile 中,伪目标(.PHONY target)是一种特殊的目标,它并不对应任何实际的文件,而是用于声明一些预定义的动作或命令。伪目标通常用于定义清理操作、编译操作等,以便在执行 make 命令时可以直接调用这些操作。
由于伪目标不对应任何实际的文件,因此如果在 Makefile 中定义了一个与伪目标同名的文件,那么在执行 make 命令时,会优先考虑文件而不是伪目标。为了避免这种情况的发生,我们需要使用 .PHONY 命令来声明伪目标,以确保它们不会与同名文件发生冲突。
通常,我们会在 Makefile 中定义一些常用的伪目标,如 all、clean、install 等,以方便进行编译、清理和安装等操作。
相关问题
makefile 伪目标
伪目标是一种不与文件名相对应的目标,它不是真正需要生成的文件,而是一个执行特定命令序列的标签。在 Makefile 中,我们可以使用 .PHONY 来声明伪目标。常见的伪目标包括 clean(清除生成的文件)、all(生成所有的可执行文件)、install(安装程序)等等。
在 Makefile 中,伪目标的语法如下:
```
.PHONY: target_name
target_name:
command1
command2
...
```
其中,target_name 是伪目标的名称,command1、command2 等是需要执行的命令序列。
注意,伪目标不会检查其依赖项是否更新,因此每次执行伪目标时,都会执行其下的所有命令。同时,伪目标也不会生成对应的文件,因此如果存在与伪目标同名的文件,Makefile 会优先使用该文件而不执行伪目标。
makefile伪目标
Makefile中的伪目标是指那些不对应任何实际文件,只是用来指定一些特殊操作或规则的目标。它们通常以“.”开头,比如“.PHONY”、“.DEFAULT”等。伪目标的作用是告诉make工具在执行时不要将其作为文件名或依赖项来处理,而是按照特定的规则进行处理。
常见的伪目标有:
1. .PHONY:指定一些“虚拟”的目标,比如“clean”、“install”等,用于执行特定的操作而不是生成文件。
2. .DEFAULT:指定默认的目标,当make没有指定目标时,就会执行该伪目标。
3. .SUFFIXES:指定所有可识别的后缀名。
4. .PRECIOUS:指定一些目标,当make被中断时,会将这些目标保存下来,以便下次从这些目标开始继续执行。
5. .IGNORE:指定忽略某些错误,使得make不会因为这些错误而停止执行。
6. .SECONDARY:指定一些目标为次要目标,当这些次要目标被删除或更新时,不会影响其他目标的生成。
阅读全文