env = Environment() #创建默认的环境变量,默认scons会按编译器的默认选项来进行编译 import os env = Environment(CC = 'gcc',CCFLAGS = '-O2') #创建并设置环境 变量 env.Program('foo.c') 环境变量的复制: env = Environment(CC = 'gcc') opt = env.Clone(CCFLAGS = '-O2') dbg = env.Clone(...
清理构建产物:要清理构建产物,可以运行以下命令: scons --clean 复制代码 使用SCons的构建变量:在SConstruct文件中,你可以使用构建变量来定义编译器选项、链接器选项等。例如: env = Environment() env.Append(CCFLAGS=['-Wall', '-O2']) env.Program('hello', 'hello.c') 复制代码 这将为编译器添加-Wall...
env = Environment() #创建默认的环境变量,默认scons会按编译器的默认选项来进行编译 1. 1. import os env = Environment(CC = 'gcc',CCFLAGS = '-O2') #创建并设置环境 变量 env.Program('foo.c') 1. 2. 3. 4. 5. 1. % scons -Q gcc -o foo.o -c -O2 foo.c gcc -o foo foo.o 1....
env.SetDefault(SPECIAL_FLAG = '-extra-option') #默认变量不存在时设置 添加新的变量: env = Environment() env.Append(NEW_VARIABLE = 'added') #不存在时自动创建并赋值;存在时变量的值是append上去而不是assign的 env.AppendUnique(CCFLAGS=['-g']) #该变量不存在时才添加 env.Prepend(CCFLAGS = ['-...
对于C,C++ 和 Fortran, 内建支持可靠自动依赖分析 . 不用像 make 工具那样需要 执行"make depends"和"make clean"就可以获得所有的依赖关系。 内建支持 C, C++, D, Java, Fortran, Yacc, Lex, Qt,SWIG 以及 Tex/Latex。 用户还可以根据自己的需要进行扩展以获得对需要编程语言的支持。
三、scons的命令行参数scons: 执行SConstruct中脚本scons -c cleanscons -Q 只显示编译信息,去除多余的打印信息scons -Q --implicit-cache hello 保存依赖关系--implicit-deps-changed 强制更新依赖关系--implicit-deps-unchanged 强制使用原先的依赖关系,即使...
默认scons会按编译器的默认选项来进行编译 import os env = Environment(CC = 'gcc',CCFLAGS = '-O2') #创建并设置环境 变量 env.Program('foo.c')环境变量的复制:env = Environment(CC = 'gcc')opt = env.Clone(CCFLAGS = '-O2')dbg = env.Clone(CCFLAGS = '-g')环境变量...
对于C,C++ 和 Fortran, 内建支持可靠自动依赖分析 . 不用像 make 工具那样需要 执行"make depends"和"make clean"就可以获得所有的依赖关系。 内建支持 C, C++, D, Java, Fortran, Yacc, Lex, Qt,SWIG 以及 Tex/Latex。 用户还可以根据自己的需要进行扩展以获得对需要编程语言的支持。
scons -c clean scons -Q 只显示编译信息,去除多余的打印信息 scons -Q --implicit-cache hello 保存依赖关系 --implicit-deps-changed 强制更新依赖关系 --implicit-deps-unchanged 强制使用原先的依赖关系,即使已经改变 四、SConstruct提供的方法 1、Program:生成可执行文件 ...
env.Clean('/bin', ['desmon]) 4.链接静态库 makefile中的实现: 放在object文件依赖列表里面,depobj=target.o libdep.a scons中的实现: 放在.o文件依赖列表里面:例如depobj=Split('target.o libdep.a') 5.链接动态库 makefile中的实现: 在链接的阶段指定库的名称,比如-lpthread,表示依赖libpthread.so ...