This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Trying to compile FreeRTOS blinky with GNU Toolchain on Hercules Launchpad

Other Parts Discussed in Thread: HALCOGEN

I am trying to compile a simple blinky example running on FreeRTOS for the TMS570 Hercules Launchpad with the GNU toolchain. Before attempting this I was able to flash and run a blinky example on the board but using TI tools.

First of all, I've created a FreeRTOS project with HalCoGen for the Hercules Launchpad, specifically the TMS570LS0432PZ_FREERTOS. I selected GCC Tools. I disabled all drivers except the GIO driver and generated the code.

On CCS I created a new project with GNU v4.7.4 (Linaro) compiler. I named it exactly like the HalCoGen project. I edited the GNU compiler options to the following: -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vpf. Also I added the include folder to the include paths.

I figured out that I needed to edit all the assembly source files' extensions to an uppercase ".S" so that they would get processed by C preprocessor.

After all this, it seems to compile correctly, even thought I get a bunch of warnings.

The problem is I get a lot of errors while linking. I am not sure if I need to edit the GNU linker options. The errors are "multiple definitions" of functions all from the file "os_tasks.c" except for the function "_c_int00()" located in the file "sys_startup.c".

This is the console report:

**** Build of configuration Debug for project FreeRTOS_Blinky_launchpad ****

"c:\\ti\\ccsv6\\utils\\bin\\gmake" -k all 
'Building file: ../source/dabort.S'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/dabort.d" -MT"source/dabort.d" -o"source/dabort.o"  "../source/dabort.S"
'Finished building: ../source/dabort.S'
' '
'Building file: ../source/esm.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/esm.d" -MT"source/esm.d" -o"source/esm.o"  "../source/esm.c"
In file included from ../source/esm.c:20:0:
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:59:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:60:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:61:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:62:1: warning: target attribute is not supported on this machine [-Wattributes]
'Finished building: ../source/esm.c'
' '
'Building file: ../source/gio.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/gio.d" -MT"source/gio.d" -o"source/gio.o"  "../source/gio.c"
In file included from ../source/gio.c:14:0:
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:59:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:60:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:61:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:62:1: warning: target attribute is not supported on this machine [-Wattributes]
'Finished building: ../source/gio.c'
' '
'Building file: ../source/notification.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/notification.d" -MT"source/notification.d" -o"source/notification.o"  "../source/notification.c"
In file included from C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_selftest.h:22:0,
                 from ../source/notification.c:17:
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:59:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:60:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:61:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:62:1: warning: target attribute is not supported on this machine [-Wattributes]
'Finished building: ../source/notification.c'
' '
'Building file: ../source/os_croutine.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_croutine.d" -MT"source/os_croutine.d" -o"source/os_croutine.o"  "../source/os_croutine.c"
'Finished building: ../source/os_croutine.c'
' '
'Building file: ../source/os_event_groups.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_event_groups.d" -MT"source/os_event_groups.d" -o"source/os_event_groups.o"  "../source/os_event_groups.c"
'Finished building: ../source/os_event_groups.c'
' '
'Building file: ../source/os_heap.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_heap.d" -MT"source/os_heap.d" -o"source/os_heap.o"  "../source/os_heap.c"
'Finished building: ../source/os_heap.c'
' '
'Building file: ../source/os_list.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_list.d" -MT"source/os_list.d" -o"source/os_list.o"  "../source/os_list.c"
'Finished building: ../source/os_list.c'
' '
'Building file: ../source/os_mpu_wrappers.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_mpu_wrappers.d" -MT"source/os_mpu_wrappers.d" -o"source/os_mpu_wrappers.o"  "../source/os_mpu_wrappers.c"
'Finished building: ../source/os_mpu_wrappers.c'
' '
'Building file: ../source/os_port.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_port.d" -MT"source/os_port.d" -o"source/os_port.o"  "../source/os_port.c"
'Finished building: ../source/os_port.c'
' '
'Building file: ../source/os_portasm.S'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_portasm.d" -MT"source/os_portasm.d" -o"source/os_portasm.o"  "../source/os_portasm.S"
'Finished building: ../source/os_portasm.S'
' '
'Building file: ../source/os_queue.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_queue.d" -MT"source/os_queue.d" -o"source/os_queue.o"  "../source/os_queue.c"
'Finished building: ../source/os_queue.c'
' '
'Building file: ../source/os_tasks.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_tasks.d" -MT"source/os_tasks.d" -o"source/os_tasks.o"  "../source/os_tasks.c"
'Finished building: ../source/os_tasks.c'
' '
'Building file: ../source/os_timer.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_timer.d" -MT"source/os_timer.d" -o"source/os_timer.o"  "../source/os_timer.c"
'Finished building: ../source/os_timer.c'
' '
'Building file: ../source/pinmux.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/pinmux.d" -MT"source/pinmux.d" -o"source/pinmux.o"  "../source/pinmux.c"
'Finished building: ../source/pinmux.c'
' '
'Building file: ../source/sys_core.S'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_core.d" -MT"source/sys_core.d" -o"source/sys_core.o"  "../source/sys_core.S"
'Finished building: ../source/sys_core.S'
' '
'Building file: ../source/sys_intvecs.S'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_intvecs.d" -MT"source/sys_intvecs.d" -o"source/sys_intvecs.o"  "../source/sys_intvecs.S"
'Finished building: ../source/sys_intvecs.S'
' '
'Building file: ../source/sys_main.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_main.d" -MT"source/sys_main.d" -o"source/sys_main.o"  "../source/sys_main.c"
../source/sys_main.c:33:6: warning: return type of 'main' is not 'int' [-Wmain]
'Finished building: ../source/sys_main.c'
' '
'Building file: ../source/sys_mpu.S'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_mpu.d" -MT"source/sys_mpu.d" -o"source/sys_mpu.o"  "../source/sys_mpu.S"
'Finished building: ../source/sys_mpu.S'
' '
'Building file: ../source/sys_pcr.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_pcr.d" -MT"source/sys_pcr.d" -o"source/sys_pcr.o"  "../source/sys_pcr.c"
'Finished building: ../source/sys_pcr.c'
' '
'Building file: ../source/sys_phantom.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_phantom.d" -MT"source/sys_phantom.d" -o"source/sys_phantom.o"  "../source/sys_phantom.c"
In file included from ../source/sys_phantom.c:13:0:
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:59:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:60:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:61:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:62:1: warning: target attribute is not supported on this machine [-Wattributes]
'Finished building: ../source/sys_phantom.c'
' '
'Building file: ../source/sys_pmu.S'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_pmu.d" -MT"source/sys_pmu.d" -o"source/sys_pmu.o"  "../source/sys_pmu.S"
'Finished building: ../source/sys_pmu.S'
' '
'Building file: ../source/sys_selftest.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_selftest.d" -MT"source/sys_selftest.d" -o"source/sys_selftest.o"  "../source/sys_selftest.c"
In file included from C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_selftest.h:22:0,
                 from ../source/sys_selftest.c:15:
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:59:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:60:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:61:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:62:1: warning: target attribute is not supported on this machine [-Wattributes]
../source/sys_selftest.c: In function 'fmcECCcheck':
../source/sys_selftest.c:757:21: warning: variable 'temp' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c:756:21: warning: variable 'otpread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c: In function 'checkB0RAMECC':
../source/sys_selftest.c:813:18: warning: variable 'regread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c:812:21: warning: variable 'ramread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c: In function 'checkB1RAMECC':
../source/sys_selftest.c:911:18: warning: variable 'regread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c:910:21: warning: variable 'ramread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c: In function 'checkFlashECC':
../source/sys_selftest.c:1009:21: warning: variable 'flashread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c: In function 'vimParityCheck':
../source/sys_selftest.c:1148:21: warning: variable 'vimramread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c: In function 'het1ParityCheck':
../source/sys_selftest.c:1208:21: warning: variable 'nhetread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c: In function 'htu1ParityCheck':
../source/sys_selftest.c:1262:21: warning: variable 'hturead' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c: In function 'adc1ParityCheck':
../source/sys_selftest.c:1325:21: warning: variable 'adcramread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c: In function 'can1ParityCheck':
../source/sys_selftest.c:1383:21: warning: variable 'canread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c: In function 'can2ParityCheck':
../source/sys_selftest.c:1447:21: warning: variable 'canread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c: In function 'mibspi1ParityCheck':
../source/sys_selftest.c:1515:21: warning: variable 'spiread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c: In function 'checkRAMECC':
../source/sys_selftest.c:1589:18: warning: variable 'regread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c:1588:21: warning: variable 'ramread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c: In function 'checkFlashEEPROMECC':
../source/sys_selftest.c:1745:21: warning: variable 'regread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c: In function 'checkRAMAddrParity':
../source/sys_selftest.c:1922:18: warning: variable 'regread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c:1921:30: warning: variable 'ramread' set but not used [-Wunused-but-set-variable]
../source/sys_selftest.c: In function 'fmcBus1ParityCheck':
../source/sys_selftest.c:2046:21: warning: variable 'flashread' set but not used [-Wunused-but-set-variable]
'Finished building: ../source/sys_selftest.c'
' '
'Building file: ../source/sys_startup.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_startup.d" -MT"source/sys_startup.d" -o"source/sys_startup.o"  "../source/sys_startup.c"
In file included from ../source/sys_startup.c:26:0:
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:59:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:60:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:61:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:62:1: warning: target attribute is not supported on this machine [-Wattributes]
../source/sys_startup.c:45:13: warning: conflicting types for built-in function 'exit' [enabled by default]
../source/sys_startup.c:52:1: warning: target attribute is not supported on this machine [-Wattributes]
../source/sys_startup.c: In function '_c_int00':
../source/sys_startup.c:571:1: warning: 'noreturn' function does return [enabled by default]
'Finished building: ../source/sys_startup.c'
' '
'Building file: ../source/sys_vim.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_vim.d" -MT"source/sys_vim.d" -o"source/sys_vim.o"  "../source/sys_vim.c"
In file included from ../source/sys_vim.c:11:0:
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:59:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:60:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:61:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:62:1: warning: target attribute is not supported on this machine [-Wattributes]
'Finished building: ../source/sys_vim.c'
' '
'Building file: ../source/system.c'
'Invoking: GNU Compiler'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -I"C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/system.d" -MT"source/system.d" -o"source/system.o"  "../source/system.c"
In file included from C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_selftest.h:22:0,
                 from ../source/system.c:21:
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:59:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:60:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:61:1: warning: target attribute is not supported on this machine [-Wattributes]
C:/CIAA/ti/FreeRTOS_Blinky_launchpad/include/sys_vim.h:62:1: warning: target attribute is not supported on this machine [-Wattributes]
'Finished building: ../source/system.c'
' '
'Building target: FreeRTOS_Blinky_launchpad.out'
'Invoking: GNU Linker'
"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc.exe" -march=armv7-r -g -gstrict-dwarf -Wall -Wl,-Map,"FreeRTOS_Blinky_launchpad.map" -static -o"FreeRTOS_Blinky_launchpad.out" "./source/dabort.o" "./source/esm.o" "./source/gio.o" "./source/notification.o" "./source/os_croutine.o" "./source/os_event_groups.o" "./source/os_heap.o" "./source/os_list.o" "./source/os_mpu_wrappers.o" "./source/os_port.o" "./source/os_portasm.o" "./source/os_queue.o" "./source/os_tasks.o" "./source/os_timer.o" "./source/pinmux.o" "./source/sys_core.o" "./source/sys_intvecs.o" "./source/sys_main.o" "./source/sys_mpu.o" "./source/sys_pcr.o" "./source/sys_phantom.o" "./source/sys_pmu.o" "./source/sys_selftest.o" "./source/sys_startup.o" "./source/sys_vim.o" "./source/system.o" -Wl,-T"../source/sys_link.ld"  -Wl,--start-group -l"c" -l"gcc" -l"nosys" -Wl,--end-group 
source\sys_startup.o: In function `_c_int00':
C:\CIAA\ti\FreeRTOS_Blinky_launchpad\Debug/../source/sys_startup.c:68: multiple definition of `_c_int00'
./source/sys_startup.o:C:\CIAA\ti\FreeRTOS_Blinky_launchpad\Debug/../source/sys_startup.c:68: first defined here
source\os_tasks.o:(.kernelBSS+0x0): multiple definition of `pxCurrentTCB'
./source/os_tasks.o:(.kernelBSS+0x0): first defined here
source\os_tasks.o: In function `xTaskGenericCreate':
os_tasks.c:(.kernelTEXT+0x0): multiple definition of `xTaskGenericCreate'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x0): first defined here
source\os_tasks.o: In function `vTaskDelete':
os_tasks.c:(.kernelTEXT+0x2c0): multiple definition of `vTaskDelete'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x2c0): first defined here
source\os_tasks.o: In function `vTaskDelayUntil':
os_tasks.c:(.kernelTEXT+0x45c): multiple definition of `vTaskDelayUntil'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x45c): first defined here
source\os_tasks.o: In function `vTaskSuspendAll':
os_tasks.c:(.kernelTEXT+0xf10): multiple definition of `vTaskSuspendAll'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0xf10): first defined here
source\os_tasks.o: In function `xTaskResumeAll':
os_tasks.c:(.kernelTEXT+0xf40): multiple definition of `xTaskResumeAll'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0xf40): first defined here
source\os_tasks.o: In function `vTaskDelay':
os_tasks.c:(.kernelTEXT+0x600): multiple definition of `vTaskDelay'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x600): first defined here
source\os_tasks.o: In function `uxTaskPriorityGet':
os_tasks.c:(.kernelTEXT+0x6f0): multiple definition of `uxTaskPriorityGet'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x6f0): first defined here
source\os_tasks.o: In function `vTaskPrioritySet':
os_tasks.c:(.kernelTEXT+0x74c): multiple definition of `vTaskPrioritySet'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x74c): first defined here
source\os_tasks.o: In function `vTaskSuspend':
os_tasks.c:(.kernelTEXT+0x998): multiple definition of `vTaskSuspend'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x998): first defined here
source\os_tasks.o: In function `vTaskSwitchContext':
os_tasks.c:(.kernelTEXT+0x14a4): multiple definition of `vTaskSwitchContext'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x14a4): first defined here
source\os_tasks.o: In function `vTaskResume':
os_tasks.c:(.kernelTEXT+0xc04): multiple definition of `vTaskResume'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0xc04): first defined here
source\os_tasks.o: In function `xTaskResumeFromISR':
os_tasks.c:(.kernelTEXT+0xd20): multiple definition of `xTaskResumeFromISR'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0xd20): first defined here
source\os_tasks.o: In function `vTaskStartScheduler':
os_tasks.c:(.kernelTEXT+0xe4c): multiple definition of `vTaskStartScheduler'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0xe4c): first defined here
source\os_tasks.o: In function `vTaskEndScheduler':
os_tasks.c:(.kernelTEXT+0xeec): multiple definition of `vTaskEndScheduler'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0xeec): first defined here
source\os_tasks.o: In function `xTaskIncrementTick':
os_tasks.c:(.kernelTEXT+0x11d8): multiple definition of `xTaskIncrementTick'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x11d8): first defined here
source\os_tasks.o: In function `xTaskGetTickCount':
os_tasks.c:(.kernelTEXT+0x1144): multiple definition of `xTaskGetTickCount'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x1144): first defined here
source\os_tasks.o: In function `xTaskGetTickCountFromISR':
os_tasks.c:(.kernelTEXT+0x117c): multiple definition of `xTaskGetTickCountFromISR'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x117c): first defined here
source\os_tasks.o: In function `uxTaskGetNumberOfTasks':
os_tasks.c:(.kernelTEXT+0x11b4): multiple definition of `uxTaskGetNumberOfTasks'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x11b4): first defined here
source\os_tasks.o: In function `vTaskPlaceOnEventList':
os_tasks.c:(.kernelTEXT+0x15c0): multiple definition of `vTaskPlaceOnEventList'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x15c0): first defined here
source\os_tasks.o: In function `vTaskPlaceOnUnorderedEventList':
os_tasks.c:(.kernelTEXT+0x16b8): multiple definition of `vTaskPlaceOnUnorderedEventList'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x16b8): first defined here
source\os_tasks.o: In function `xTaskRemoveFromEventList':
os_tasks.c:(.kernelTEXT+0x17e8): multiple definition of `xTaskRemoveFromEventList'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x17e8): first defined here
source\os_tasks.o: In function `xTaskRemoveFromUnorderedEventList':
os_tasks.c:(.kernelTEXT+0x1924): multiple definition of `xTaskRemoveFromUnorderedEventList'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x1924): first defined here
source\os_tasks.o: In function `vTaskSetTimeOutState':
os_tasks.c:(.kernelTEXT+0x1a54): multiple definition of `vTaskSetTimeOutState'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x1a54): first defined here
source\os_tasks.o: In function `xTaskCheckForTimeOut':
os_tasks.c:(.kernelTEXT+0x1aac): multiple definition of `xTaskCheckForTimeOut'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x1aac): first defined here
source\os_tasks.o: In function `vTaskMissedYield':
os_tasks.c:(.kernelTEXT+0x1bc8): multiple definition of `vTaskMissedYield'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x1bc8): first defined here
source\os_tasks.o: In function `vTaskAllocateMPURegions':
os_tasks.c:(.kernelTEXT+0x1d10): multiple definition of `vTaskAllocateMPURegions'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x1d10): first defined here
source\os_tasks.o: In function `uxTaskGetStackHighWaterMark':
os_tasks.c:(.kernelTEXT+0x20d8): multiple definition of `uxTaskGetStackHighWaterMark'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x20d8): first defined here
source\os_tasks.o: In function `xTaskGetSchedulerState':
os_tasks.c:(.kernelTEXT+0x2168): multiple definition of `xTaskGetSchedulerState'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x2168): first defined here
source\os_tasks.o: In function `uxTaskResetEventItemValue':
os_tasks.c:(.kernelTEXT+0x21d0): multiple definition of `uxTaskResetEventItemValue'
./source/os_tasks.o:os_tasks.c:(.kernelTEXT+0x21d0): first defined here
collect2.exe: error: ld returned 1 exit status
gmake: *** [FreeRTOS_Blinky_launchpad.out] Error 1
gmake: Target `all' not remade because of errors.

**** Build Finished ****

I hope I'm in the right track. I haven't found much information on the subject of building projects with GNU tools for the Hercules MCUs. So any help would be appreciated.

Thanks.

Martin

  • Hi Martin,


    The answer is probably staring right at me in the information you included,  but I'm not 'seeing' it.  :( 

    You might try dumping the symbols with the 'readelf' utility and looking for the duplicates.

    The other thing to check might be what is the full linker command line given.  Are their either duplications of the .o files or is there something funny on the command line that makes the linker read the .o files multiple times.

    Can you link the .o files manually without CCS?  You know just call the linker from a command prompt and give it only the .o files that you want to link? 

    Also I think there should be a linker script for GCC - would be good to know what is in there.

  • Hi Anthony,

    Thank you for your reply.

    The previous report and errors was the result from trying to compile on my Windows 7 machine. On my Linux machine I am still getting an error while linking, but it is different error message. This is the report I get on my Linux machine:

    **** Build of configuration Debug for project FreeRTOS_Blinky_launchpad ****
    
    /home/martin/ti/ccsv6/utils/bin/gmake -k all 
    Building file: ../source/dabort.S
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/dabort.d" -MT"source/dabort.d" -o"source/dabort.o"  "../source/dabort.S"
    Finished building: ../source/dabort.S
     
    Building file: ../source/esm.c
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/esm.d" -MT"source/esm.d" -o"source/esm.o"  "../source/esm.c"
    Finished building: ../source/esm.c
     
    Building file: ../source/gio.c
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/gio.d" -MT"source/gio.d" -o"source/gio.o"  "../source/gio.c"
    Finished building: ../source/gio.c
     
    Building file: ../source/notification.c
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/notification.d" -MT"source/notification.d" -o"source/notification.o"  "../source/notification.c"
    Finished building: ../source/notification.c
     
    Building file: ../source/os_croutine.c
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_croutine.d" -MT"source/os_croutine.d" -o"source/os_croutine.o"  "../source/os_croutine.c"
    Finished building: ../source/os_croutine.c
     
    Building file: ../source/os_event_groups.c
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_event_groups.d" -MT"source/os_event_groups.d" -o"source/os_event_groups.o"  "../source/os_event_groups.c"
    Finished building: ../source/os_event_groups.c
    ../source/sys_selftest.c: In function 'fmcECCcheck':
     
    Building file: ../source/os_heap.c
    Invoking: GNU Compiler
    ../source/sys_selftest.c:757:21: warning: variable 'temp' set but not used [-Wunused-but-set-variable]
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_heap.d" -MT"source/os_heap.d" -o"source/os_heap.o"  "../source/os_heap.c"
    ../source/sys_selftest.c:756:21: warning: variable 'otpread' set but not used [-Wunused-but-set-variable]
    Finished building: ../source/os_heap.c
     
    Building file: ../source/os_list.c
    ../source/sys_selftest.c: In function 'checkB0RAMECC':
    ../source/sys_selftest.c:813:18: warning: variable 'regread' set but not used [-Wunused-but-set-variable]
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_list.d" -MT"source/os_list.d" -o"source/os_list.o"  "../source/os_list.c"
    ../source/sys_selftest.c:812:21: warning: variable 'ramread' set but not used [-Wunused-but-set-variable]
    Finished building: ../source/os_list.c
     
    Building file: ../source/os_mpu_wrappers.c
    ../source/sys_selftest.c: In function 'checkB1RAMECC':
    ../source/sys_selftest.c:911:18: warning: variable 'regread' set but not used [-Wunused-but-set-variable]
    Invoking: GNU Compiler
    ../source/sys_selftest.c:910:21: warning: variable 'ramread' set but not used [-Wunused-but-set-variable]
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_mpu_wrappers.d" -MT"source/os_mpu_wrappers.d" -o"source/os_mpu_wrappers.o"  "../source/os_mpu_wrappers.c"
    ../source/sys_selftest.c: In function 'checkFlashECC':
    Finished building: ../source/os_mpu_wrappers.c
    ../source/sys_selftest.c:1009:21: warning: variable 'flashread' set but not used [-Wunused-but-set-variable]
     
    Building file: ../source/os_port.c
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_port.d" -MT"source/os_port.d" -o"source/os_port.o"  "../source/os_port.c"
    ../source/sys_selftest.c: In function 'vimParityCheck':
    ../source/sys_selftest.c:1148:21: warning: variable 'vimramread' set but not used [-Wunused-but-set-variable]
    Finished building: ../source/os_port.c
     
    Building file: ../source/os_portasm.S
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_portasm.d" -MT"source/os_portasm.d" -o"source/os_portasm.o"  "../source/os_portasm.S"
    ../source/sys_selftest.c: In function 'het1ParityCheck':
    Finished building: ../source/os_portasm.S
     
    Building file: ../source/os_queue.c
    ../source/sys_selftest.c:1208:21: warning: variable 'nhetread' set but not used [-Wunused-but-set-variable]
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_queue.d" -MT"source/os_queue.d" -o"source/os_queue.o"  "../source/os_queue.c"
    ../source/sys_selftest.c: In function 'htu1ParityCheck':
    Finished building: ../source/os_queue.c
     
    Building file: ../source/os_tasks.c
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_tasks.d" -MT"source/os_tasks.d" -o"source/os_tasks.o"  "../source/os_tasks.c"
    Finished building: ../source/os_tasks.c
    ../source/sys_selftest.c:1262:21: warning: variable 'hturead' set but not used [-Wunused-but-set-variable]
     
    Building file: ../source/os_timer.c
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/os_timer.d" -MT"source/os_timer.d" -o"source/os_timer.o"  "../source/os_timer.c"
    ../source/sys_selftest.c: In function 'adc1ParityCheck':
    Finished building: ../source/os_timer.c
     
    Building file: ../source/pinmux.c
    ../source/sys_selftest.c:1325:21: warning: variable 'adcramread' set but not used [-Wunused-but-set-variable]
    Invoking: GNU Compiler
    ../source/sys_selftest.c: In function 'can1ParityCheck':
    ../source/sys_selftest.c:1383:21: warning: variable 'canread' set but not used [-Wunused-but-set-variable]
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/pinmux.d" -MT"source/pinmux.d" -o"source/pinmux.o"  "../source/pinmux.c"
    ../source/sys_selftest.c: In function 'can2ParityCheck':
    Finished building: ../source/pinmux.c
     
    Building file: ../source/sys_core.S
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_core.d" -MT"source/sys_core.d" -o"source/sys_core.o"  "../source/sys_core.S"
    ../source/sys_selftest.c:1447:21: warning: variable 'canread' set but not used [-Wunused-but-set-variable]
    Finished building: ../source/sys_core.S
     
    Building file: ../source/sys_intvecs.S
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_intvecs.d" -MT"source/sys_intvecs.d" -o"source/sys_intvecs.o"  "../source/sys_intvecs.S"
    ../source/sys_selftest.c: In function 'mibspi1ParityCheck':
    Finished building: ../source/sys_intvecs.S
     
    Building file: ../source/sys_main.c
    ../source/sys_selftest.c:1515:21: warning: variable 'spiread' set but not used [-Wunused-but-set-variable]
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_main.d" -MT"source/sys_main.d" -o"source/sys_main.o"  "../source/sys_main.c"
    ../source/sys_selftest.c: In function 'checkRAMECC':
    ../source/sys_selftest.c:1589:18: warning: variable 'regread' set but not used [-Wunused-but-set-variable]
    Finished building: ../source/sys_main.c
     
    Building file: ../source/sys_mpu.S
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_mpu.d" -MT"source/sys_mpu.d" -o"source/sys_mpu.o"  "../source/sys_mpu.S"
    ../source/sys_selftest.c:1588:21: warning: variable 'ramread' set but not used [-Wunused-but-set-variable]
    Finished building: ../source/sys_mpu.S
     
    Building file: ../source/sys_pcr.c
    ../source/sys_selftest.c: In function 'checkFlashEEPROMECC':
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_pcr.d" -MT"source/sys_pcr.d" -o"source/sys_pcr.o"  "../source/sys_pcr.c"
    ../source/sys_selftest.c:1745:21: warning: variable 'regread' set but not used [-Wunused-but-set-variable]
    Finished building: ../source/sys_pcr.c
     
    Building file: ../source/sys_phantom.c
    ../source/sys_selftest.c: In function 'checkRAMAddrParity':
    ../source/sys_selftest.c:1922:18: warning: variable 'regread' set but not used [-Wunused-but-set-variable]
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_phantom.d" -MT"source/sys_phantom.d" -o"source/sys_phantom.o"  "../source/sys_phantom.c"
    Finished building: ../source/sys_phantom.c
    ../source/sys_selftest.c:1921:30: warning: variable 'ramread' set but not used [-Wunused-but-set-variable]
     
    Building file: ../source/sys_pmu.S
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_pmu.d" -MT"source/sys_pmu.d" -o"source/sys_pmu.o"  "../source/sys_pmu.S"
    ../source/sys_selftest.c: In function 'fmcBus1ParityCheck':
    Finished building: ../source/sys_pmu.S
     
    Building file: ../source/sys_selftest.c
    ../source/sys_selftest.c:2046:21: warning: variable 'flashread' set but not used [-Wunused-but-set-variable]
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_selftest.d" -MT"source/sys_selftest.d" -o"source/sys_selftest.o"  "../source/sys_selftest.c"
    ../source/sys_startup.c:45:13: warning: conflicting types for built-in function 'exit' [enabled by default]
    Finished building: ../source/sys_selftest.c
    ../source/sys_startup.c: In function '_c_int00':
    ../source/sys_startup.c:571:1: warning: 'noreturn' function does return [enabled by default]
     
    Building file: ../source/sys_startup.c
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_startup.d" -MT"source/sys_startup.d" -o"source/sys_startup.o"  "../source/sys_startup.c"
    Finished building: ../source/sys_startup.c
    Using built-in specs.
    Reading specs from /home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/arm-none-eabi/4.7.4/../../../../arm-none-eabi/lib/rdimon.specs
     
    Building file: ../source/sys_vim.c
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/sys_vim.d" -MT"source/sys_vim.d" -o"source/sys_vim.o"  "../source/sys_vim.c"
    Finished building: ../source/sys_vim.c
    rename spec link to old_link
    COLLECT_GCC=/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc
     
    Building file: ../source/system.c
    Invoking: GNU Compiler
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -c -mtune=cortex-r4 -march=armv7-r -marm -mfpu=vfp -I"/home/martin/workspace_ccs/FreeRTOS_Blinky_launchpad/include" -I"/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/arm-none-eabi/include" -g -gstrict-dwarf -Wall -MMD -MP -MF"source/system.d" -MT"source/system.d" -o"source/system.o"  "../source/system.c"
    COLLECT_LTO_WRAPPER=/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/arm-none-eabi/4.7.4/lto-wrapper
    Finished building: ../source/system.c
     
    Building target: FreeRTOS_Blinky_launchpad.out
    Target: arm-none-eabi
    Configured with: /home/build/work/GCC-4-7-build/src/gcc/configure --target=arm-none-eabi --prefix=/home/build/work/GCC-4-7-build/install-native --libexecdir=/home/build/work/GCC-4-7-build/install-native/lib --infodir=/home/build/work/GCC-4-7-build/install-native/share/doc/gcc-arm-none-eabi/info --mandir=/home/build/work/GCC-4-7-build/install-native/share/doc/gcc-arm-none-eabi/man --htmldir=/home/build/work/GCC-4-7-build/install-native/share/doc/gcc-arm-none-eabi/html --pdfdir=/home/build/work/GCC-4-7-build/install-native/share/doc/gcc-arm-none-eabi/pdf --enable-languages=c,c++ --disable-decimal-float --disable-libffi --disable-libgomp --disable-libmudflap --disable-libquadmath --disable-libssp --disable-libstdcxx-pch --disable-nls --disable-shared --disable-threads --disable-tls --with-gnu-as --with-gnu-ld --with-newlib --with-headers=yes --with-python-dir=share/gcc-arm-none-eabi --with-sysroot=/home/build/work/GCC-4-7-build/install-native/arm-none-eabi --build=i686-linux-gnu --host=i686-linux-gnu --with-gmp=/home/build/work/GCC-4-7-build/build-native/host-libs/usr --with-mpfr=/home/build/work/GCC-4-7-build/build-native/host-libs/usr --with-mpc=/home/build/work/GCC-4-7-build/build-native/host-libs/usr --with-ppl=/home/build/work/GCC-4-7-build/build-native/host-libs/usr --with-cloog=/home/build/work/GCC-4-7-build/build-native/host-libs/usr --with-libelf=/home/build/work/GCC-4-7-build/build-native/host-libs/usr --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --with-pkgversion='GNU Tools for ARM Embedded Processors' --with-multilib-list=armv6-m,armv7-m,armv7e-m,armv7-r
    Thread model: single
    gcc version 4.7.4 20130913 (release) [ARM/embedded-4_7-branch revision 202601] (GNU Tools for ARM Embedded Processors) 
    Invoking: GNU Linker
    "/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-gcc" -march=armv7-r -g -gstrict-dwarf -Wall -Wl,-Map,"FreeRTOS_Blinky_launchpad.map" -nostartfiles -nodefaultlibs -march=armv7-r -g -gstrict-dwarf -Wall -march=armv7-r -g -gstrict-dwarf -Wall -v --specs=rdimon.specs -o"FreeRTOS_Blinky_launchpad.out" "./source/dabort.o" "./source/esm.o" "./source/gio.o" "./source/notification.o" "./source/os_croutine.o" "./source/os_event_groups.o" "./source/os_heap.o" "./source/os_list.o" "./source/os_mpu_wrappers.o" "./source/os_port.o" "./source/os_portasm.o" "./source/os_queue.o" "./source/os_tasks.o" "./source/os_timer.o" "./source/pinmux.o" "./source/sys_core.o" "./source/sys_intvecs.o" "./source/sys_main.o" "./source/sys_mpu.o" "./source/sys_pcr.o" "./source/sys_phantom.o" "./source/sys_pmu.o" "./source/sys_selftest.o" "./source/sys_startup.o" "./source/sys_vim.o" "./source/system.o" -Wl,-T"../source/sys_link.ld"  -Wl,--start-group -l"c" -l"gcc" -l"nosys" -Wl,--end-group 
    COMPILER_PATH=/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/arm-none-eabi/4.7.4/:/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/:/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/arm-none-eabi/4.7.4/../../../../arm-none-eabi/bin/
    LIBRARY_PATH=/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/arm-none-eabi/4.7.4/armv7-ar/thumb/:/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/arm-none-eabi/4.7.4/../../../../arm-none-eabi/lib/armv7-ar/thumb/:/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../arm-none-eabi/lib/armv7-ar/thumb/:/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/arm-none-eabi/4.7.4/:/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/:/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/arm-none-eabi/4.7.4/../../../../arm-none-eabi/lib/:/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../arm-none-eabi/lib/
    COLLECT_GCC_OPTIONS='-march=armv7-r' '-g' '-gstrict-dwarf' '-nostartfiles' '-nodefaultlibs' '-march=armv7-r' '-g' '-gstrict-dwarf' '-march=armv7-r' '-g' '-gstrict-dwarf' '-Wall' '-v' '-o' 'FreeRTOS_Blinky_launchpad.out'
     /home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/arm-none-eabi/4.7.4/collect2 --sysroot=/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../arm-none-eabi -X -lrdimon -o FreeRTOS_Blinky_launchpad.out -L/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/arm-none-eabi/4.7.4/armv7-ar/thumb -L/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/arm-none-eabi/4.7.4/../../../../arm-none-eabi/lib/armv7-ar/thumb -L/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../arm-none-eabi/lib/armv7-ar/thumb -L/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/arm-none-eabi/4.7.4 -L/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc -L/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/arm-none-eabi/4.7.4/../../../../arm-none-eabi/lib -L/home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../arm-none-eabi/lib -Map FreeRTOS_Blinky_launchpad.map ./source/dabort.o ./source/esm.o ./source/gio.o ./source/notification.o ./source/os_croutine.o ./source/os_event_groups.o ./source/os_heap.o ./source/os_list.o ./source/os_mpu_wrappers.o ./source/os_port.o ./source/os_portasm.o ./source/os_queue.o ./source/os_tasks.o ./source/os_timer.o ./source/pinmux.o ./source/sys_core.o ./source/sys_intvecs.o ./source/sys_main.o ./source/sys_mpu.o ./source/sys_pcr.o ./source/sys_phantom.o ./source/sys_pmu.o ./source/sys_selftest.o ./source/sys_startup.o ./source/sys_vim.o ./source/system.o -T../source/sys_link.ld --start-group -lc -lgcc -lnosys --end-group
    /home/martin/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/arm-none-eabi/4.7.4/../../../../arm-none-eabi/bin/ld: cannot find source\sys_startup.o
    collect2: error: ld returned 1 exit status
    gmake: *** [FreeRTOS_Blinky_launchpad.out] Error 1
    gmake: Target `all' not remade because of errors.
    
    **** Build Finished ****
    

    This is the linker script:

    /*----------------------------------------------------------------------------*/
    /* sys_link.ld                                                              */
    /*                                                                            */
    /* (c) Texas Instruments 2009-2014, All rights reserved.                      */
    /*                                                                            */
    /*----------------------------------------------------------------------------*/
    /* Entry Point */
    ENTRY(_c_int00)
    
    /* Highest address of the stack */
    _estack = 0x8008000;    /* end of 32K RAM */
    
    /* Generate a link error if heap and stack don't fit into RAM */
    _Min_Heap_Size = 0x400;      /* required amount of heap  */
    
    /* Specify the memory areas */
    MEMORY
    {
      VECTORS(rx)     : ORIGIN = 0x00000000, LENGTH = 0x00000020
      KERNEL (rx)     : ORIGIN = 0x00000020, LENGTH = 0x00008000
      FLASH  (rx)     : ORIGIN = 0x00008020, LENGTH = 0x00057FE0
      CPU_STACK (rw)  : ORIGIN = 0x08000000, LENGTH = 0x00001500 /* Stack is configured in sys_core.asm */
      KRAM (xrw)      : ORIGIN = 0x08001500, LENGTH = 0x00000800
      RAM (xrw)       : ORIGIN = (0x08001500 + 0x00000800), LENGTH = (0x00006B00 - 0x00000800)
    }
    
    /* Define output sections */
    SECTIONS
    {
      /* The ISR vector goes first into RAM */
      .intvecs :
      {
        . = ALIGN(4);
        KEEP(*(.intvecs)) /* ISR vector */
        . = ALIGN(4);
      } >VECTORS
    
     /* FreeRTOS Kernel in protected region of Flash */
      .kernelTEXT :
      {
        . = ALIGN(4);
        KEEP(*(.kernelTEXT))
    	KEEP(source\sys_startup.o(.rodata))
    	KEEP(source\os_tasks.o(.rodata))
        . = ALIGN(4);
      } >KERNEL
      
      /* The program code and other data goes into RAM */
      .text :
      {
        . = ALIGN(4);
        *(.text)           /* .text sections (code) */
        *(.text*)          /* .text* sections (code) */
        *(.glue_7)         /* glue arm to thumb code */
        *(.glue_7t)        /* glue thumb to arm code */
        *(.eh_frame)
    
        KEEP (*(.init))
        KEEP (*(.fini))
    
        . = ALIGN(4);
        _etext = .;        /* define a global symbols at end of code */
      } >FLASH
    
      /* Constant data goes into RAM */
      .rodata :
      {
        . = ALIGN(4);
        *(.rodata)         /* .rodata sections (constants, strings, etc.) */
        *(.rodata*)        /* .rodata* sections (constants, strings, etc.) */
        . = ALIGN(4);
      } >FLASH
    
       .ARM.extab   : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >RAM
        .ARM : {
        __exidx_start = .;
          *(.ARM.exidx*)
          __exidx_end = .;
        } >FLASH
    
      .preinit_array     :
      {
        PROVIDE_HIDDEN (__preinit_array_start = .);
        KEEP (*(.preinit_array*))
        PROVIDE_HIDDEN (__preinit_array_end = .);
      } >FLASH
      .init_array :
      {
        PROVIDE_HIDDEN (__init_array_start = .);
        KEEP (*(SORT(.init_array.*)))
        KEEP (*(.init_array*))
        PROVIDE_HIDDEN (__init_array_end = .);
      } >FLASH
      .fini_array :
      {
        PROVIDE_HIDDEN (__fini_array_start = .);
        KEEP (*(SORT(.fini_array.*)))
        KEEP (*(.fini_array*))
        PROVIDE_HIDDEN (__fini_array_end = .);
      } >FLASH
    
      /* used by the startup to initialize data */
      _sidata = LOADADDR(.data);
      
      /* Initialized data sections goes into RAM, load LMA copy after code */
      .data :
      {
        . = ALIGN(4);
        _sdata = .;        /* create a global symbol at data start */
        *(.data)           /* .data sections */
        *(.data*)          /* .data* sections */
    
        . = ALIGN(4);
        _edata = .;        /* define a global symbol at data end */
      } >RAM AT> FLASH
    
      /* FreeRTOS Kernel data in protected region of RAM */
      /* used by the startup to initialize data */
      _ksidata = LOADADDR(.kernelBSS);
     
      /* Initialized data sections goes into RAM, load LMA copy after code */
      .data :
      {
        . = ALIGN(4);
        _ksdata = .;        /* create a global symbol at data start */
        *(.data)           /* .data sections */
        *(.data*)          /* .data* sections */
    
        . = ALIGN(4);
        _kedata = .;        /* define a global symbol at data end */
      } >RAM AT> FLASH
      
      .kernelHEAP : {} >RAM
      
      /* Uninitialized data section */
      . = ALIGN(4);
      .bss :
      {
        /* This is used by the startup in order to initialize the .bss secion */
        _sbss = .;         /* define a global symbol at bss start */
        __bss_start__ = _sbss;
        *(.bss)
        *(.bss*)
        *(COMMON)
    
        . = ALIGN(4);
        _ebss = .;         /* define a global symbol at bss end */
        __bss_end__ = _ebss;
      } >RAM
    
      PROVIDE ( end = _ebss );
      PROVIDE ( _end = _ebss );
    
      /* Remove information from the standard libraries */
      /DISCARD/ :
      {
        libc.a ( * )
        libm.a ( * )
        libgcc.a ( * )
      }
      
      .ARM.attributes 0 : { *(.ARM.attributes) }
    }
    

    I haven't tried your suggestions yet, but I looking into it right now. I'll post back as I get to it.

  • I figured out why I get different errors on windows and on linux. The linker script file "sys_link.ld" (that was created with HalCoGen on Windows) has two file paths with the backslash "\" as directory delimiter. To be exact in lines 43 and 44. I repeat the code here for clarity:

     /* FreeRTOS Kernel in protected region of Flash */
      .kernelTEXT :
      {
        . = ALIGN(4);
        KEEP(*(.kernelTEXT))
    	KEEP(source\sys_startup.o(.rodata))
    	KEEP(source\os_tasks.o(.rodata))
        . = ALIGN(4);
      } >KERNEL

    I edited the file changing the backslashes to forwardslashes, and now I get the same "multiple definition" errors on Linux as I did on Windows. Fixing this error gave me a clue of why I might be getting those multiple definition errors. If you look at the linker script, you'll see that the files those paths make reference to are "sys_startup.o" and "os_tasks.o". These files are the ones that contain all the functions that are getting defined twice. So it seems like it gets linked from the script file once and again from the linker command line. I'm not sure if this is really the source of the errors or how to fix it. I am guessing I should remove those files from the linker command line, which is automatically constructed by CCS. CCS handles these files in the ${inputs} environment variable.

    If anyone has a clearer idea of how to go about doing this, it would be appreciated.

    Martin.