我的makefile的一部分具有以下代码:

target.o:
        cd dir; $(MAKE)

其中文件target.odir目录中具有其自己的makefile。在编译期间,我得到以下输出行:
make[1]: Entering directory `dir'
ifort -c target.f -o target.o
make[1]: Leaving directory `dir'

我想使第一和第三输出线静音,但保持第二。在主makefile中的make中添加-s可以消除第一个和第三个,但也可以消除我想要保留的那个。

(1)有没有办法做到这一点?

(2)这样做为什么不是一个好主意?

最佳答案

您需要$(MAKE) --no-print-directory

您不能仅使命令的一部分静音。 @前缀为全有或全无。
您当然可以回显任何内容(例如,这是autotools静默输出的工作方式,将默认的make输出静默,然后输出GEN target.file或其他内容)。

关于Makefile:专门使 "make[N]:"行静音,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27318702/

10-11 23:08
查看更多