$@shishenmeyis
时间: 2024-03-13 10:44:13 浏览: 68
精细金属掩模板(FMM)行业研究报告 显示技术核心部件FMM材料产业分析与市场应用
`$@` 是一个 Makefile 的自动变量,表示当前目标的名称。在一个 Makefile 规则中,目标是指要生成的文件或者其他目标。
举个例子,如果有一个 Makefile 规则如下:
```makefile
test: main.o func1.o func2.o
gcc -o test main.o func1.o func2.o
```
其中,`test` 是目标,那么 `$@` 就表示目标的名称 `test`。在这个规则中,`$@` 被用作输出文件的名称,即:
```makefile
gcc -o test main.o func1.o func2.o
```
另外,还有一个类似的自动变量 `$<`,表示第一个依赖项的名称。如果上面的 Makefile 规则改写成如下形式:
```makefile
test: main.o func1.o func2.o
gcc -o $@ $^
```
那么 `$@` 就表示目标的名称 `test`,而 `$^` 表示所有依赖项的名称,即:
```makefile
gcc -o test main.o func1.o func2.o
```
阅读全文