Using Embest IDE to run FrrRtos example code

I am trying to use Embest IDE to compile and run the example program in the FreeRTOS. However, I am running into some link errors. Has anybody else used the Embest IDE for FreeRTOS? Below are the error messages that I am receiving. If anybody has any suggestions, please let me know. Regards, -——————-Building project: rtosdemo516 ——————— arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommonMinimalBlockQ.c -o.debugBlockQ.o arm-elf-as -gdwarf2 –defsym AT91R40807=1 –defsym AT91EB40=1 –defsym AT91_DEBUG_ICE=1 -I..\..\..targetsat91            -I..\..\..targetsat91targetseb40 -I..\..\..targetsat91partsm40800 C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoARM7_AT91FR40008_GCCboot.s            -o.debugboot.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommonMinimalcomtest.c -o.debugcomtest.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommonMinimaldeath.c -o.debugdeath.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommonMinimaldynamic.c -o.debugdynamic.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommonMinimalflash.c -o.debugflash.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommonMinimalflop.c -o.debugflop.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSSourceportableMemMangheap_2.c -o.debugheap_2.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommonMinimalinteger.c -o.debuginteger.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSSourcelist.c -o.debuglist.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoARM7_AT91FR40008_GCCmain.c -o.debugmain.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoARM7_AT91FR40008_GCCParTestParTest.c -o.debugParTest.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommonMinimalPollQ.c -o.debugPollQ.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSSourceportableGCCARM7_AT91FR40008port.c -o.debugport.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSSourceportableGCCARM7_AT91FR40008portISR.c -o.debugportISR.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSSourcequeue.c -o.debugqueue.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommonMinimalsemtest.c -o.debugsemtest.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoARM7_AT91FR40008_GCCserialserial.c -o.debugserial.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoARM7_AT91FR40008_GCCserialserialISR.c -o.debugserialISR.o arm-elf-gcc -mlittle-endian -gdwarf -c -I..\..\..targetsat91 -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSDemoArm7_at91fr40008_gcc             -IC:EmbestIDEExamplesat91rtosdemo516FreeRTOSSourceinclude -IC:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoCommoninclude             C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSSourcetasks.c -o.debugtasks.o arm-elf-ld -T..\..\..targetsat91targetssram_ice.ld -L..\..\..Buildxgcc-arm-elfarm-elflib -L..\..\..Buildxgcc-arm-elflibgcc-libarm-elf3.0.2            -o.debugrtosdemo516.elf .debugboot.o .debugBlockQ.o .debugcomtest.o .debugdeath.o .debugdynamic.o            .debugflash.o .debugflop.o .debugheap_2.o .debuginteger.o .debuglist.o .debugmain.o .debugParTest.o            .debugPollQ.o .debugport.o .debugportISR.o .debugqueue.o .debugsemtest.o .debugserial.o            .debugserialISR.o .debugtasks.o ..\..\..targetsat91driverslib_drvarm-interlib_drv_32.lib ..\..\..targetsat91partsr40807arm-interr40807_lib32.lib            -lc -lgcc .debugboot.o:C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoARM7_AT91FR40008_GCCboot.s:113: undefined reference to `__bss_beg__’ .debugboot.o:C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoARM7_AT91FR40008_GCCboot.s:113: undefined reference to `__data_beg__’ .debugboot.o:C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoARM7_AT91FR40008_GCCboot.s:113: undefined reference to `__data_beg_src__’ .debugboot.o:C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoARM7_AT91FR40008_GCCboot.s:113: undefined reference to `__data_end__’ .debugboot.o:C:EmbestIDEExamplesat91rtosdemo516-2FreeRTOSDemoARM7_AT91FR40008_GCCboot.s:113: undefined reference to `__stack_end__’ ..\..\..Buildxgcc-arm-elflibgcc-libarm-elf3.0.2/libgcc.a(__main.o): In function `__do_global_ctors’: __main.o(.text+0xc4): undefined reference to `atexit’ ..\..\..Buildxgcc-arm-elflibgcc-libarm-elf3.0.2/libgcc.a(unwind-dw2-fde.o): In function `size_of_encoded_value’: unwind-dw2-fde.o(.text+0x5c): undefined reference to `abort’ ..\..\..Buildxgcc-arm-elflibgcc-libarm-elf3.0.2/libgcc.a(unwind-dw2-fde.o): In function `read_encoded_value_with_base’: unwind-dw2-fde.o(.text+0x1d8): undefined reference to `abort’ ..\..\..Buildxgcc-arm-elflibgcc-libarm-elf3.0.2/libgcc.a(unwind-dw2-fde.o): In function `__register_frame’: unwind-dw2-fde.o(.text+0x274): undefined reference to `malloc’ ..\..\..Buildxgcc-arm-elflibgcc-libarm-elf3.0.2/libgcc.a(unwind-dw2-fde.o): In function `__register_frame_table’: unwind-dw2-fde.o(.text+0x32c): undefined reference to `malloc’ ..\..\..Buildxgcc-arm-elflibgcc-libarm-elf3.0.2/libgcc.a(unwind-dw2-fde.o): In function `__deregister_frame_info_bases’: unwind-dw2-fde.o(.text+0x3e4): undefined reference to `free’ unwind-dw2-fde.o(.text+0x41c): undefined reference to `abort’ ..\..\..Buildxgcc-arm-elflibgcc-libarm-elf3.0.2/libgcc.a(unwind-dw2-fde.o): In function `__deregister_frame’: unwind-dw2-fde.o(.text+0x450): undefined reference to `free’ ..\..\..Buildxgcc-arm-elflibgcc-libarm-elf3.0.2/libgcc.a(unwind-dw2-fde.o): In function `base_from_object’: unwind-dw2-fde.o(.text+0x4b4): undefined reference to `abort’ ..\..\..Buildxgcc-arm-elflibgcc-libarm-elf3.0.2/libgcc.a(unwind-dw2-fde.o): In function `get_cie_encoding’: unwind-dw2-fde.o(.text+0x4e8): undefined reference to `strlen’ ..\..\..Buildxgcc-arm-elflibgcc-libarm-elf3.0.2/libgcc.a(unwind-dw2-fde.o): In function `start_fde_sort’: unwind-dw2-fde.o(.text+0x1274): undefined reference to `malloc’ unwind-dw2-fde.o(.text+0x1298): undefined reference to `malloc’ ..\..\..Buildxgcc-arm-elflibgcc-libarm-elf3.0.2/libgcc.a(unwind-dw2-fde.o): In function `end_fde_sort’: unwind-dw2-fde.o(.text+0x1350): undefined reference to `free’ unwind-dw2-fde.o(.text+0x138c): undefined reference to `abort’ unwind-dw2-fde.o(.text+0x1390): undefined reference to `abort’ Error executing above command.

Using Embest IDE to run FrrRtos example code

As you probably know – these mainly relate to an incorrect linker script for the Embest tools.  I should try creating a fresh Embest IDE project with a simple hello world program, then when this is working add in the FreeRTOS files.  The files required can be found from the makefile.  You will need to ensure the startup file sets the stacks for the required modes and calls main() from supervisor mode. Having said that I gave up with the IDE.  Check the version of GCC that it is using.  If it is like my copy then it is very old and has known bugs for the ARM7 target both for thumb generation and the interrupt code generation.  If you want a nice IDE for GCC have you looked at CrossWorks?