问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

makefile 中,出现$$(M) 是什么意思,我一般$(M)这么用

发布网友 发布时间:2022-11-25 07:27

我来回答

2个回答

热心网友 时间:2023-10-09 01:37

在makefile中,会经常使用shell命令,也经常见到$var 和 $$var的情况,有什么区别呢,区别大了。不要认为在makefile的规则的命令行中使用$var就是将makefile的变量和shell共享了,这里仅仅是读取makefile的变量然后扩展开,将其值作为参数传给了一个shell命令。而$$var是在访问一个shell命令内定义的变量,而非makefile的变量。此外,如果某规则有n个shell命令行构成,而相互之间没有用';'和'\'连接起来的话,就是相互之间没有关联的shell命令,相互之间也不能变量共享。看如下例子:

makefile代码段1:
VAR=3
target: prerequsite1 prerequsite2
echo $VAR (1)
VAR=4 (2)
echo $VAR (3)
echo $$VAR (4)

在代码段1中,(1)的结果是3,显然makefile利用自己的变量将$VAR扩展成3之后传递给这个echo这个shell命令。
(2)中,是一个独立的shell命令自己第一了一个shell变量,名字也叫VAR,且其值为4,不会影响到makefile中的VAR。
(3)中,同(1),makefile中的变量VAR的值依然是3
(4)makefile将$$VAR先执行一次扩展得到如下shell命令:
echo $VAR然后交给shell去解释执行,可是对于这个shell命令来说VAR是一个为定义的变量,因此输出的结果就是个空行。

makefile代码段2:
VAR=3
target: prerequsite1 prerequsite2
echo $VAR;\ (1')
VAR=4;\ (2')
echo $VAR;\ (3')
echo $$VAR (4')

在代码段2中,所有的shell命令都被连接起来了,那么执行的结果就有变化了:
(1')结果同(1),$VAR被替换成了3
(2')结果同(2)
(3')输出3,因为虽然shell中有VAR变量,可是makefile先要进行扩展,扩展的结果就是echo 3。
(4')输出4,因为makefile扩展结果为echo $VAR,而shell中已经有了变量VAR,且其值为4.

热心网友 时间:2023-10-09 01:38

有可能是 bb=b aa=bb
$$(aa)->等同于 b
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
梦见陌生女人在水里生下男孩,男孩很聪明,但是陌生女人夫妇把男孩当女... oppohd通话怎么关掉 oppohd通话如何关掉 华为手机密码忘记了如何解锁? 某校高一化学研究性学习小组对日常生活中的氯气用途进行了调查,了解到... 怎样使用微软的传输助手进行文件打印? 苏氏宗祠地址在哪里? 苏圩镇苏氏宗祠 苏氏祠堂广西南宁市江南区苏氏祠堂 关于秋梅的诗句有哪些? 晃晃麻将玩法介绍 makefile之call函数 安徽淮南哪里能分辨鞋子真伪 安宁市有检测绝缘鞋的吗 海尔燃气热水器性价比最好的是哪个性好的呀 要恒温强排的 不要太贵呀 谁能告诉我呀 谢谢!!! 怎样从镇海坐船到嵊泗 谁知道烟台坐船到大连的多钱,能坐几个小时到大连? 高效安全!PDG格式如何转换成PDF文件 守护甜心哪个软件可以免费观看 收房时需要交的费用有哪些呢? 教父讲的是什么故事 教父剧情介绍 原来你还在这里剧情介绍 它是根据什么改编的 逃亡者PlanB李多海是主角吗? 韩剧逃亡者planb 逃亡者plan b全集 逃亡者plan b全集韩剧中字 逃亡者planb全集播放 逃亡者12韩语中字 韩剧逃亡者12集 逃亡者planb12 办理工商营业执照收费吗? 兰钧和瑞浦是同一家公司吗? 瑞浦能源男生进去一般做什么 瑞浦能源几号发工资 兰钧跟瑞浦能源什么关系 瑞浦能源为什么那么累 彪马卫衣绳头有的有标志有的没有 3d顺口溜玄机? 请问67期3D彩票奖号是多少? 热量表上传不了数据怎么办 奇迹暖暖好听帮派名字 奇迹暖暖安卓联盟,适合小萌新,才创的新联盟 ID:3352346 名字:碎玉堆琼 要求不高,别 求带有璀璨的诗句,和句子,多来些最好 工业相机供应商哪个好 泉州哪里可以修华为手机听筒 泉州华为客服中心电话 发朋友圈关于父爱的文案说说 送女生简短浪漫的告白句子 16g能存多少张照片 十六兆内存卡可放多少张相片 免费送50g流量是骗局吗 常怀感恩之心,常念相助之人 茶语录简短 关于茶的唯美句子 关于茶的简短唯美句子(身临其境的妙语值得一阅) 人防平面图是什么意思? 脚趾间烂了裂口子是什么病