我在尝试比较不同版本的Android时磁盘空间不足(每个版本在构建后大约需要6-7G)。我认为make有一个选项(类似于make clean),它将删除所有中间的.obj文件,并使目标单独存在。但我不记得是什么了;或者还有别的选择吗!
makefile将执行它所写的任何操作。clean
目标是Make文件的约定,而不是Make的特性。make文件不需要有clean
规则;如果有一个clean
规则,如果它写得很好,它会清理你想要清理的文件,如果它写得很糟糕,它会把事情搞得一团糟。
如果你正在编写(或编辑)一个makefile,你可以添加一个删除object文件的规则。如果您使用的是别人编写的makefile,它要么有这样的规则,要么没有。
也许。intermediate指令会有所帮助。来自GNU Make文档(10.4隐式规则链):
第二个区别是,如果
make'.
make'报告删除后,make' _does_ create B in order to update something else, it deletes B later on after it is no longer needed. Therefore, an intermediate file which did not exist before
make'也不存在通过打印一个' rm -f'命令来显示它是哪个文件删除。一般来说,如果文件在Makefile作为目标或先决条件。但是,您可以显式地方法的先决条件列出一个文件,将其标记为中间文件特殊目标'。intermediate '。即使文件是,该操作也会生效