old_contents: import os
  
  # toolchains options
  ARCH        ='risc-v'
  CPU         ='k210'
  CROSS_TOOL  ='gcc'
  
  if os.getenv('RTT_ROOT'):
      RTT_ROOT = os.getenv('RTT_ROOT')
  else:
      RTT_ROOT = r'../..'
  
  if os.getenv('RTT_CC'):
      CROSS_TOOL = os.getenv('RTT_CC')
  
  if  CROSS_TOOL == 'gcc':
      PLATFORM    = 'gcc'
      EXEC_PATH   = r'/opt/riscv64-unknown-elf/bin'
  else:
      print('Please make sure your toolchains is GNU GCC!')
      exit(0)
  
  if os.getenv('RTT_EXEC_PATH'):
      EXEC_PATH = os.getenv('RTT_EXEC_PATH')
  
  BUILD = 'release'
  
  if PLATFORM == 'gcc':
      # toolchains
      PREFIX  = 'riscv-none-embed-'
      CC      = PREFIX + 'gcc'
      CXX     = PREFIX + 'g++'
      AS      = PREFIX + 'gcc'
      AR      = PREFIX + 'ar'
      LINK    = PREFIX + 'gcc'
      TARGET_EXT = 'elf'
      SIZE    = PREFIX + 'size'
      OBJDUMP = PREFIX + 'objdump'
      OBJCPY  = PREFIX + 'objcopy'
  
      DEVICE  = ' -mcmodel=medany'
      CFLAGS  = DEVICE + ' -fno-common -ffunction-sections -fdata-sections -fstrict-volatile-bitfields '
      AFLAGS  = ' -c' + DEVICE + ' -x assembler-with-cpp'
      LFLAGS  = DEVICE + ' -nostartfiles -Wl,--gc-sections,-Map=rtthread.map,-cref,-u,_start -T link.lds'
      CPATH   = ''
      LPATH   = ''
  
      if BUILD == 'debug':
          CFLAGS += ' -O0 -ggdb'
          AFLAGS += ' -ggdb'
      else:
          CFLAGS += ' -O2 -Os'
  
      CXXFLAGS = CFLAGS
  
  DUMP_ACTION = OBJDUMP + ' -D -S $TARGET > rtt.asm\n'
  POST_ACTION = OBJCPY + ' -O binary $TARGET rtthread.bin\n' + SIZE + ' $TARGET \n'
  
new_contents: import os
  
  # toolchains options
  ARCH        ='risc-v'
  CPU         ='k210'
  CROSS_TOOL  ='gcc'
  
  if os.getenv('RTT_ROOT'):
      RTT_ROOT = os.getenv('RTT_ROOT')
  else:
      RTT_ROOT = r'../..'
  
  if os.getenv('RTT_CC'):
      CROSS_TOOL = os.getenv('RTT_CC')
  
  if  CROSS_TOOL == 'gcc':
      PLATFORM    = 'gcc'
      EXEC_PATH   = r'/opt/riscv64-unknown-elf/bin'
  else:
      print('Please make sure your toolchains is GNU GCC!')
      exit(0)
  
  if os.getenv('RTT_EXEC_PATH'):
      EXEC_PATH = os.getenv('RTT_EXEC_PATH')
  
  BUILD = 'release'
  
  if PLATFORM == 'gcc':
      # toolchains
      PREFIX  = 'riscv-none-embed-'
      CC      = PREFIX + 'gcc'
      CXX     = PREFIX + 'g++'
      AS      = PREFIX + 'gcc'
      AR      = PREFIX + 'ar'
      LINK    = PREFIX + 'gcc'
      TARGET_EXT = 'elf'
      SIZE    = PREFIX + 'size'
      OBJDUMP = PREFIX + 'objdump'
      OBJCPY  = PREFIX + 'objcopy'
  
      DEVICE  = ' -mcmodel=medany -march=rv64imafdc -mabi=lp64d'
      CFLAGS  = DEVICE + ' -fno-common -ffunction-sections -fdata-sections -fstrict-volatile-bitfields'
      AFLAGS  = ' -c' + DEVICE + ' -x assembler-with-cpp'
      LFLAGS  = DEVICE + ' -nostartfiles -Wl,--gc-sections,-Map=rtthread.map,-cref,-u,_start -T link.lds'
      CPATH   = ''
      LPATH   = ''
  
      if BUILD == 'debug':
          CFLAGS += ' -O0 -ggdb'
          AFLAGS += ' -ggdb'
      else:
          CFLAGS += ' -O2 -Os'
  
      CXXFLAGS = CFLAGS
  
  DUMP_ACTION = OBJDUMP + ' -D -S $TARGET > rtt.asm\n'
  POST_ACTION = OBJCPY + ' -O binary $TARGET rtthread.bin\n' + SIZE + ' $TARGET \n'
  
subject: fix build error with new sdk