[英]Display currently compiling filename in gcc under linux
使用gcc編譯多個文件(即gcc * .c)時,大型項目可能需要花費一些時間進行編譯,如果未發現錯誤,則屏幕將保持靜態一段時間。 gcc是否具有命令行選項來顯示其當前正在編譯的c文件的文件名?
gcc
只是一個驅動程序, 使用cc1
實際編譯輸入的C文件。
也就是說,您可以簡單地檢查gcc
子進程的參數來獲取gcc
的最新信息。 即:
> gcc 1.c 2.c & ps -f --forest
[1] 22907
UID PID PPID C STIME TTY TIME CMD
myaut 21963 18153 0 20:21 pts/1 00:00:00 /bin/bash
myaut 22907 21963 0 20:41 pts/1 00:00:00 \_ gcc 1.c 2.c
myaut 22909 22907 0 20:41 pts/1 00:00:00 | \_
/usr/lib64/gcc/x86_64-suse-linux/4.8/cc1 -quiet 1.c -quiet -dumpbase
1.c -mtune=generic -march=x86-64 -auxbase 1 -o
myaut 22908 21963 0 20:41 pts/1 00:00:00 \_ ps -f --forest
在此示例中,我很幸運地捕獲了實際上使用ps
編譯1.c的子進程,該進程幾乎與gcc
同時啟動
無論如何,在GCC(make,CMake或SCons)之上使用完整的構建系統對編譯包含多個文件的項目要好得多。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.