linux makefile或命令前的@有什么意义

在看uboot的Makefile时看到,@,如
smdk2410_config : unconfig
@$(MKCONFIG) $(@:_config=) arm arm920t smdk2410 NULL s3c24x0
@echo $(TEST_STRING)
不知道这个开关的@是什么意思,这是Makefile专用的,还是Shell命令中也有?
$才是对变量的引用吧...

@在Makefile一般用来解析shell命令,

@if [ ! -d $(CPU) ]; then mkdir $(CPU); fi
后面跟的是shell的判断语句。

你可以用@把shell命令放在Makefile中执行。
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-07-08
$@是Makfile里的一种自动化变量,代表目前规则中所有的目标的集合,在模式规则中,如果有多个目标,那么,"$@"就是匹配于目标中模式定义的集合。
Makefile规则语法
targets : prerequisites

command
...
$@就是对应targets目标集合。
举个例子具体说明:

objects = t1.o t2.o

$(objects): %.o: %.c
$(CC) -c $(CFLAGS) $< -o $@
这里objects包含两个目标,t1.o和t2.o,$@就代表objects,也即{t1.o t2.o}这个目标集合。
第2个回答  2018-11-29
ssh user@127.0.0.1:8080也有这个;
第3个回答  2010-08-30
我也想知道,应该是变量的引用,可能是automake中定义的变量

linux脚本里在命令前面加“@”是什么意思呢?比如@rm $(VERBOSE) -f m...
加@的作用:加了后,执行脚本时将不会在终端上把命令打印出来(只执行不打印)不加,则执行的同时将命令打印出来

Linux里的gcc编程的makefile里$@什么的表示什么意思?
(1) $@ ——目标文件的名称;(2) $^ ——所有的依赖文件,以空格分开,不包含重复的依赖文件;(3) $< ——第一个依赖文件的名称。示例:main:main.c sort.o gcc main.c sort.o -o main 表示为简洁的就是:main:main.c sort.o gcc $^ -o ...

linux内核编译基础知识储备 --- 过渡篇
在Linux内核编译中,makefile提供了强大的函数机制,如call函数和if函数,以简化复杂的任务。call函数特别之处在于能创建参数化函数,通过$(call variable,param,param,…)的形式,将参数赋值给临时变量$ (1), $ (2)等,以便在展开时动态替换。if函数则基于条件执行,其语法为$(if , )或$(if ,,...

linux中make makefiles这个命令是什么意思
Makefile文件作为一种描述文档一般需要包含以下内容: ◆ 宏定义 ◆ 源文件之间的相互依赖关系 ◆ 可执行的命令 Makefile中允许使用简单的宏指代源文件及其相关编译信息,在Linux中也称宏为变量。在引用宏时只需在变量前加$符号,但值得注意的是,如果变量名的长度超过一个字符,在引用时就必须加圆括号()。下面都是有...

linux Makefile configure里面 += := -= 这些符号的意思?
而是在make程序执行到他的相关操作的时候才展开——即用的时候才生效 ‘:=’定义的叫直接展开式变量,赋值时将后面表达式的值马上展开传递给变量——即立即生效。+=,-=这种是用来对变量进行追加定义的操作符,在原有的定义基础上加上或减去某个定义,比如去掉某个对象.o文件。

linux 下的makefile 中的命令
回答:echo是显示后边字符的命令 如果不加如:echo 'a‘ 输出结果是echo a 如果加上@表示取消echo 的显示 在shell下就显示a

求几行Unix下makefile文件命令的解释,录用后给分谢谢~!!!
&(CC)就是gcc,这句是编译的命令,由它生成最终文件,linux都是用gcc编译的,嵌入式交叉编译一般用arm-linux-gcc 这是依赖关系,.o文件生成,由.h,.c文件产生的.o文件,所以前面的.c、.h改变(通过对比修改时间),都会导致重新编译 tar是打包命令,-cvf 就是tar的参数,打包文件但不压缩 要...

linux下的makefile文件有什么作用
makefile其实不是Linux下才有,你用vs编译软件时,同样使用的是makefile来进行编译。makefile可以进行工程的编译工作,让你编写的代码最后能够根据makefile的结构,生成你可以执行的可执行软件。

linuxmake命令什么意思?
Linux中make命令的含义 在Linux系统中,make命令是一个非常重要的编译工具。它的主要作用是自动化地编译和构建程序。详细解释如下:一、基本含义 make命令用于管理软件编译流程。它通过读取一个名为Makefile的文件,来确定如何编译和链接程序,从而生成可执行文件或其他形式的软件输出。在大型软件项目中,make...

一文讲解Linux内核Makefile执行流程
五、Make [all\/_all\/modules]使用make命令行指定all\/_all\/modules目标或不指定目标时,是为了生成vmlinux文件,涉及的Makefile内容及流程包括vmlinux目标、prepare目标的概要与详细步骤。以上内容对理解Linux内核的Makefile执行流程提供了全面的指南,有助于深入学习Linux内核编译过程。

相似回答