我使用scons脚本通过VC10和瑞萨编译器编译我的代码。
我使用VC10在variant目录中成功构建了我的源代码,但是如果我为renesas编译器使用相同的脚本,那么它不会在variant目录中构建obj文件。 任何人都可以告诉我该怎么做。
我正在使用瑞萨rx600家族控制器。
我的示例树看起来像
src1
-main.c
sconscript
sconstruct
subdirA
fileA.c
sconscript
subdirB
fileB.c
sconscript
src1 / sconstruct包含
import os
env = Environment()
tmp_obj_list = []
env = Environment(ENV = {'PATH' : os.environ['PATH']})
env['LINKFLAGS'] = "/nologo /subsystem:console /pdb:project.pdb"
env['CCFLAGS'] = "/nologo /wd4355 /GR- /EHs-c- /MT /c /W3 /WX /Zi /FD"
env['ENV']['TMP'] = os.environ['TMP']
env['ENV']['TEMP'] = os.environ['TEMP']
Export('env')
env.SConscript('d://src1//subdirA//SConscript',
variant_dir = 'd://build1//subdirA',
duplicate = 0, exports = 'env')
tmp_obj_list.append(Glob('d://build1//subdirA' + '/*.lib'))
env.SConscript('d://src1//subdirB//SConscript',
variant_dir = 'd://build1//subdirB',
duplicate = 0, exports = 'env')
tmp_obj_list.append(Glob('d://build1//subdirB' + '/*.lib'))
env.SConscript('d://src1//SConscript')
env.Append(LIBS = tmp_obj_list)
src1 / sconscript包含
Import('env')
env.Program('program',Glob('*.c'))
env.Clean('program','d://build1')
src1 / subdirA& src1 / subdirB sconscript包含
Import('env')
l = env.Library(target='subdirB', source='fileB.c')
Return('l')