makefile中*.o”为什么写成 “%.o”不行,%.o不是表示所有的的.o文件吗?

超级搬砖工 2017-11-24 09:52:39
makefile如下:

CC=gcc
LIB=pthread

main.obj:*.o
$(CC) $^ -o $@ -l$(LIB)
%.o:%.c
$(CC) -c $< -o $@

clean:
rm *.o
rm *.obj

问题:
“main.obj:*.o”中的“*.o”为什么写成 “%.o”不行,%.o不是表示所有的的.o文件吗?要怎么改
...全文
856 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
超级搬砖工 2017-11-24
  • 打赏
  • 举报
回复
非常感谢,懂了
老马何以识途 2017-11-24
  • 打赏
  • 举报
回复 2
这篇文章讲的比较清楚了: http://www.cnblogs.com/warren-wong/p/3979270.html *代表当前目录下所有,%类似于一个宏是从前一个目标带入时才用的,会用带入的值替换掉%

23,116

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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