GNU Make --output-sync不起作用?

时间:2014-03-09 01:53:47

标签: c makefile gnu-make

这让我疯狂。

对于并行make build(-j),您应该能够同步控制台输出。这是ref:

我正在使用GNU Make 3.82 for x86_64-redhat-linux-gnu

非同步:

make -j8 all         //not synchronized

收益率(我在这里使用eclipse-cdt managedbuild):

Building file: ../dome.c
Building file: ../main.c
Invoking: GCC C Compiler
gcc -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"dome.d" -MT"dome.d" -o "dome.o" "../dome.c"
Invoking: GCC C Compiler
gcc -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"main.d" -MT"main.d" -o "main.o" "../main.c"
Finished building: ../dome.c
Finished building: ../main.c


Building target: empty_linux
Invoking: GCC C Linker
gcc  -o "empty_linux"  ./dome.o ./main.o   
Finished building target: empty_linux

同步尝试

make -j8 all --output-sync    

产量(-O / -Oline / etc的结果相同):

make: unrecognized option '--output-sync 

问题

我到底做错了什么?

1 个答案:

答案 0 :(得分:11)

--output-sync选项仅在GNU make 4.0中可用。此外,在您的情况下,您应该使用:

--output-sync=target

-Otarget

但这不适用于版本3.82。