------------------file.c------------------#include "file1.h"#includevoid fun_bar(){printf("this is fun_bar\n");}-----------------file2.c------------------#include "file2.h"#include void fun_foo(){#ifdef HELLOSCONSprintf("This is fun_foo\n");#endif}-------------------demo.c------------------#include #include #include "file1.h"#include "file2.h"int main(int argc, char* argv[]){printf("Hello, another SCons !\n");fun_bar(); fun_foo(); return 0;}------------------使用------------------写一个依赖文件如下,保存如下,例如SConstruct:Program('demo.exe', ['demo.c', 'file1.c', 'file2.c'], LIBS = 'm', LIBPATH = ['/usr/lib', '/usr/local/lib'], CCFLAGS = '-DHELLOSCONS')-------------------window下运行scons结果如下,linux类似-----------------------C:\Documents and Settings\peterguo\My Documents\Downloads\sample\sample\demo>sconsscons: Reading SConscript files ...scons: done reading SConscript files.scons: Building targets ...gcc -o file1.o -c -DHELLOSCONS file1.cgcc -o file2.o -c -DHELLOSCONS file2.cgcc -o demo.o -c -DHELLOSCONS demo.cgcc -o demo.exe demo.o file1.o file2.o -LC:\usr\lib -LC:\usr\local\lib -lmscons: done building targets.于是生成了可执行程序demo.exe,此外scons还可以自动构建如库,等模块