免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1695 | 回复: 0
打印 上一主题 下一主题

关于MAKEFILE中一点很基础的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-09-14 16:41 |只看该作者 |倒序浏览
本帖最后由 d19890104 于 2010-09-14 17:01 编辑

  1. #
  2. #在文件夹下,建立1test.c 2test.c 3test.c 4test.c ,想生成4个可执行文件1test 2test 3test 4test
  3. #

  4. CC = gcc
  5. CFLAGS = -g -Wall

  6. source = $(wildcard *.c)
  7. object = $(source:%.c=%.o)
  8. target = 1test 2test 3test 4test


  9. all:$(target)
  10. .PHONY:all
  11. $(target):%:%.o
  12. #$(target):$(object)           《------第一个
  13.         $(CC) $(CFLAGS) -o $@ $<
  14. #       rm -rf *.o                     《------第二个
  15. $(object):%.o:%.c
  16. #$(object):$(source)            《------第三个
  17.         $(CC) $(CFLAGS) -c -o $@ $<

  18. .PHONY:clean
  19. clean:
  20.         rm -rf *.o 1test 2test 3test 4test
复制代码
上面被注释的3个地方,问题有2:
1:我写了2个地方相似功能的语句,(第一个和第三个), 请问这个和没有被注释掉的地方有区别吗?差别在哪儿?什么时候用哪个?(两者都可以正常使用)
2:就是 rm -rf *.o这一行了,这个问题跟第一个问题关系密切,因为要删除 .o 文件,我希望在用完后在删除。但是我的这个功能在上述代码中使用时候不会按照我想的做,不知道如何修改。

注:请问关于makefile的问题是在这里提的吗?发错的话我就删了去正确的地方重新发
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP