(1)如果想要生成两个编译器版本的代码,比如在PC机上的GCC编译和ARM linux gcc交叉编译,并且在编译的时候可以选择,SConstruct内容如下,源代码测试文件还是前一个hello world程序:
> vim SConstruct
src = Glob('*.c')
platform = ARGUMENTS.get('platform','pc')
if platform == 'arm':
EXE_PATH = '/opt/arm-2007q1/bin'
PREFIX = 'arm-none-linux-gnueabi-'
ARMCC = PREFIX + 'gcc'
ARMAS = PREFIX + 'gcc'
ARMAR = PREFIX + 'ar'
ARMLINK = PREFIX + 'gcc'
ARMSIZE = PREFIX + 'size'
ARMOBJDUMP = PREFIX + 'objdump'
ARMOBJCPY = PREFIX + 'objcpy'
env = Environment (AS = ARMAS,
CC = ARMCC,
AR = ARMAR,
LINK = AR