3
我正在使用一对boost库并使用下面的规则来生成自动依赖关系。我认为boost头文件确实减慢了编译的速度,因为如果没有Makefile中的依赖项,那编译项目的速度就要快10倍。有没有办法提高生成的依赖关系的速度?自动生成的依赖关系导致编译速度缓慢
%.o: %.cc
$(CXX) $(CFLAGS) $(INCLUDES) -MD -c $< -o [email protected]
@mv $*.d .deps/
@cp .deps/$*.d .deps/$*.tmp
@sed -e 's;#.*;;' -e 's;^[^:]*: *;;' -e 's; *\\$$;;' \
-e '/^$$/d' -e 's;$$; :;' < .deps/$*.tmp >> .deps/$*.d
@rm .deps/$*.tmp
由于您可能不会更改提升标题,因此没有理由将它们添加为依赖项。所以你可以寻找一种方法来排除boost头文件(也可能是其他系统头文件)。 – 2012-07-25 06:58:44
(删除了我的答案,因为我意识到它并不真正与您的具体问题有关)。就我个人而言,我写了一个自定义Python脚本,它在<1秒内扫描我的'src'并写入一个非常简单的(无*规则或由GCC生成的依赖项)Makefile。 – Oleg2718281828 2012-07-25 08:49:04
我在ruby中做了同样的事情来为我的耙构建生成依赖文件。它只是省略<>中的所有括号。 – 2012-07-25 08:56:06