问个非常简单的makefile问题

周靖峰 2013-02-04 04:00:20
$+是什么东西?我表示只见过$@ $^ $<

百度也搜不出这个东西,而我做的项目的makefile文件中居然有这个东西,求高手回答
...全文
202 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
周靖峰 2013-02-04
  • 打赏
  • 举报
回复
引用 1 楼 dubiousway 的回复:
找个make 介绍文件,里面一般会有: ------------------------- $@ 表示规则中的目标文件集。在模式规则中,如果有多个目标,那么,"$@"就是匹配于 目标中模式定义的集合。 $% 仅当目标是函数库文件中,表示规则中的目标成员名。例如,如果一个目标是"foo.a (bar.o)",那么,"$%"就是"bar.o","$@"就是"……
原来如此,谢谢
dubiousway 2013-02-04
  • 打赏
  • 举报
回复
找个make 介绍文件,里面一般会有: ------------------------- $@ 表示规则中的目标文件集。在模式规则中,如果有多个目标,那么,"$@"就是匹配于 目标中模式定义的集合。 $% 仅当目标是函数库文件中,表示规则中的目标成员名。例如,如果一个目标是"foo.a (bar.o)",那么,"$%"就是"bar.o","$@"就是"foo.a"。如果目标不是函数库文件(Unix 下是[.a],Windows 下是[.lib]),那么,其值为空。 $< 依赖目标中的第一个目标名字。如果依赖目标是以模式(即"%")定义的,那么"$<"将 是符合模式的一系列的文件集。注意,其是一个一个取出来的。 $? 所有比目标新的依赖目标的集合。以空格分隔。 $^ 所有的依赖目标的集合。以空格分隔。如果在依赖目标中有多个重复的,那个这个变量 会去除重复的依赖目标,只保留一份。 $+ 这个变量很像"$^",也是所有依赖目标的集合。只是它不去除重复的依赖目标。

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧