17
我們的構建系統使用gcc來生成源文件的標題依賴於* .d文件,編譯時:如何打印來自llvm/clang的依賴關係(相當於gcc -MD)?
gcc -MD -MF foo.d -c foo.o foo.cc
但是,我想不出如何產生與LLVM鐺類似的輸出。
我們的構建系統使用gcc來生成源文件的標題依賴於* .d文件,編譯時:如何打印來自llvm/clang的依賴關係(相當於gcc -MD)?
gcc -MD -MF foo.d -c foo.o foo.cc
但是,我想不出如何產生與LLVM鐺類似的輸出。
這是完全一樣的:
clang -MD -MF foo.d -c foo.o foo.cc
一個例子:
$ cat example.c
#include <stdio.h>
int main(int argc, char **argv)
{
printf("Hello, world!\n");
return 0;
}
$ clang -MD -MF example-clang.d -c -o example-clang.o example.c
$ gcc -MD -MF example-gcc.d -c -o example-gcc.o example.c
$ cat example-clang.d
example-clang.o: example.c /usr/include/stdio.h /usr/include/_types.h \
/usr/include/sys/_types.h /usr/include/sys/cdefs.h \
/usr/include/machine/_types.h /usr/include/i386/_types.h \
/usr/include/secure/_stdio.h /usr/include/secure/_common.h
$ cat example-gcc.d
example-gcc.o: example.c /usr/include/stdio.h /usr/include/_types.h \
/usr/include/sys/_types.h /usr/include/sys/cdefs.h \
/usr/include/machine/_types.h /usr/include/i386/_types.h \
/usr/include/secure/_stdio.h /usr/include/secure/_common.h
$ diff example-clang.d example-gcc.d
1c1
< example-clang.o: example.c /usr/include/stdio.h /usr/include/_types.h \
---
> example-gcc.o: example.c /usr/include/stdio.h /usr/include/_types.h \
衛生署。我通過「llvmc -clang」嘗試過,並且無法使其工作。似乎直接使用clang會更好。謝謝! – 2011-04-07 19:56:03
這個記錄在哪裏?我一直無法找到關於-MD,-MF和-MM選項的單詞。 – CXJ 2014-09-05 04:24:34
Clang大多與gcc有相同的選項。大多。 – 2014-09-05 05:11:27