当我make
ffmpeg时,我可以看到以下行
CC ffmpeg.o
LD ffmpeg_g
CP ffmpeg
STRIP ffmpeg
使用尽可能少的修改文件来查找CC,LD等命令的快速方法是什么?
答案 0 :(得分:7)
答案 1 :(得分:2)
虽然其输出格式不正确,但您可以在任何程序上使用strace
来查找正在执行的内容:
$ strace -f -s 1000 -e execve make 2>&1 | grep execve
execve("/usr/bin/make", ["make"], [/* 39 vars */]) = 0
[pid 22076] execve("/bin/sh", ["/bin/sh", "-c", "printf \"CC\\t%s\\n\" libavdevic
e/alsa-audio-common.o; gcc -I. -I./ -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LA
RGE FILE_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DHAVE_AV_CONFIG_H -
std=c99 -fomit-frame-pointer -pthread -g -Wdeclaration-after-statement -Wall -Wno
-parentheses -Wno-switch -Wno-format-zero-length -Wdisabled-optimization -Wpointe
r-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wtype-li
mits -Wundef -Wmissing-prototypes -Wno-pointer-to-int-cast -Wstrict-prototypes -O
3 -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -Werror=implicit-function
-declaration -Werror=missing-prototypes -MMD -MF libavdevice/alsa-audio-common.d
-MT libavdevice/alsa-audio-common.o -c -o libavdevice/alsa-audio-common.o libavde
vice/alsa-audio-common.c"], [/* 42 vars */]