diff --git a/bsp/qemu-vexpress-a9/qemu-nographic.sh b/bsp/qemu-vexpress-a9/qemu-nographic.sh new file mode 100644 index 0000000000000000000000000000000000000000..bf808dead2b6acffa698f9213eaaefbba92f7f14 --- /dev/null +++ b/bsp/qemu-vexpress-a9/qemu-nographic.sh @@ -0,0 +1 @@ +qemu-system-arm -M vexpress-a9 -kernel rtthread.elf -nographic diff --git a/bsp/qemu-vexpress-a9/rtconfig.py b/bsp/qemu-vexpress-a9/rtconfig.py index 0bd53277f5a5b10ddd6cf86698f854174939b45f..1592f574f5b9203b8ba955df05cd93a2a7c69423 100644 --- a/bsp/qemu-vexpress-a9/rtconfig.py +++ b/bsp/qemu-vexpress-a9/rtconfig.py @@ -37,7 +37,7 @@ if PLATFORM == 'gcc': CFLAGS = DEVICE + ' -Wall' AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp -D__ASSEMBLY__' LINK_SCRIPT = 'link.lds' - LFLAGS = DEVICE + ' -Wl,--gc-sections,-Map=rtthread.map,-cref,-u,system_vectors'+\ + LFLAGS = DEVICE + ' -nostartfiles -Wl,--gc-sections,-Map=rtthread.map,-cref,-u,system_vectors'+\ ' -T %s' % LINK_SCRIPT CPATH = '' diff --git a/tools/building.py b/tools/building.py index 79c013527b778294566ac79213b52c2cad54838a..d855aaebdcb0ebbfd449a92bffa0437c59a13a26 100644 --- a/tools/building.py +++ b/tools/building.py @@ -303,6 +303,11 @@ def PrepareBuilding(env, root_directory, has_libcpu=False, remove_components = [ LINKCOMSTR = 'LINK $TARGET' ) + # fix the linker for C++ + if GetDepend('RT_USING_CPLUSPLUS'): + if env['LINK'].find('gcc') != -1: + env['LINK'] = env['LINK'].replace('gcc', 'g++') + # we need to seperate the variant_dir for BSPs and the kernels. BSPs could # have their own components etc. If they point to the same folder, SCons # would find the wrong source code to compile.