3332|1

63

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

makefile里正则表达式的问题 [复制链接]

让我更新SDK版本, 以前没看过编译的东西, 只好边学边搞, 现在遇到个难题:
新SDK里多了一个这样的正则表达式
DEPS_SED = $(CP) $(BLDDIR)/$*.d $(BLDDIR)/$*.tmp;\
        $(ECHO) >> $(BLDDIR)/$*.tmp;\
        $(SED) -e 's/\#.*//' -e 's/^[^:]*: *//' \
        -e 's/ *\\$$//' -e '/^$$/ d' -e 's/$$/ :/' \
        -e '/^ .$$/d' \
        < $(BLDDIR)/$*.d >> $(BLDDIR)/$*.tmp; \
        $(SED) -e 's|^\([^\/ ].*\.o\):|'$(BLDDIR)/'\1:|g'  \
        -e 's|.*?/\(.*\.o\):|'$(BLDDIR)/'\1:|g'  \
        -e 's| \([0-9a-zA-Z]\)| '$(SDK)/$(LOCALDIR)'\/\1|g' \
        -e 's|^\([0-9a-zA-Z]\)|'$(SDK)/$(LOCALDIR)'/\1|g' \
        -e 's| \(\.\.\/\)| '$(SDK)/$(LOCALDIR)'\/\1|g' \
        -e 's|'$(SDK)'|'$$\{SDK\}'|g' \
        < $(BLDDIR)/$*.tmp > $(BLDDIR)/$*.P;         

我只能看出来操作上是先把 .o文件的依赖文件 .d复制成 .tmp,  然后做了两次替换, 最后生成 .p文件, 但是现在的结果是 .d里面有正确的头文件依赖关系, .tmp和 .d一样 .p是空文件.  正则表达式我刚开始学. 这个实在看不明白了. 求教一下有人能看懂这个到底要替换什么东西么?

最新回复

有点明白了, $(SED)里应该是调用sed文本编辑器, 我没有在make.tool里指定编辑器. 导致生成的文件是空的.  详情 回复 发表于 2010-4-29 21:05
点赞 关注

回复
举报

77

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
有点明白了, $(SED)里应该是调用sed文本编辑器, 我没有在make.tool里指定编辑器. 导致生成的文件是空的.
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表