加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

[编译环境][make]自动生成依赖关系

发布时间:2020-12-14 02:12:11 所属栏目:百科 来源:网络整理
导读:sources = hello.cinclude $( sources:.c=.d) %. d: %. c @set -e; rm -f $@ ; $( CC) -MM $( CPPFLAGS) $ $@ . $$ $$ ; sed 's,($*).o[ :]*,1.o $@ :,g' $@ . $$ $$ $@ ; rm -f $@ . $$ $$ sources变量包含了需要产生依赖关系的源文件。 需要注意
sources = hello.c
include $(sources:.c=.d)

%.d: %.c
    @set -e; rm -f $@; 
    $(CC) -MM $(CPPFLAGS) $< > $@.$$$$; 
    sed 's,($*).o[ :]*,1.o $@ :,g' < $@.$$$$ > $@; 
    rm -f $@.$$$$

sources变量包含了需要产生依赖关系的源文件。
需要注意的是,当第一次执行make工具的时候,在执行include命令时,因.d文件不存在,故会报错。但随即%.d: %.c规则会创建.d文件,因此,此问题不算是真正的问题。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读