1
例如,我有叫1.H一個頭文件:Scons doen't指定CPPPATH,仍然可以檢測到.h依賴項?
#define MY 3
然後,我有一個子目錄叫myc和1.C和FC文件:
$ cat 1.c
void f();
int main()
{
return 0;
}
$ cat f.c
#include"../1.h"
#include<stdio.h>
void f(){printf("hello %d\n",MY);}
$ cat SConscript
Program('my2files',['1.c','f.c'])
運行SCons,就OK。然後,我改變1.H是
#define MY 2
我沒有指定CPPPATH = .. /在我的SConstruct,因此,我希望scons的能夠檢測這種依賴性。我再次運行scons,好吧,似乎檢測到了這一變化,再次編譯了.c文件。
我的問題是,是CPPPATH隱式無用?是scons還是gcc可以檢測到頭文件的變化?