首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

Makefile中的一个有关问题

2012-02-05 
Makefile中的一个问题XML code%.d: %.c@set -e rm -f $@ \$(CC) -M $(CPPFLAGS) $ $@.$$$$ \sed s

Makefile中的一个问题

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

请大家帮忙解读一下sed那行,谢谢!

[解决办法]
$(CC) -M 生成的dep文件有如下的格式。
假设源文件为hello.c
C/C++ code
hello.o: hello.chello.o: /usr/include/stdio.h
[解决办法]
$* 不包含扩展名的目标文件名称。
查查makefile就知道了
[解决办法]
sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ >; $@; \
把$@.$$$$中$*.o[:]*全局替换成 1.o,

热点排行