namcho wrote on Saturday, May 23, 2015:
Hello,
I’m trying write Wrapper Class for FreeRTOS with ARM GCC on eclipse platform.
I had worked same Wrapper Class on Keil MDK-ARM v5.14.
I’m using stm32f303vc which is cortex-m4 and it has got Hardware FPU.
So I have included Source\portable\GCC\ARM_CM4F port files to my project.
I dont invoke any freertos functions in my main.cpp just compiled empty project.
Here is my compilier output:
18:05:27 **** Incremental Build of configuration Release for project RtosWrapper ****
make all
Building file: ../system/src/stm32f3-stdperiph/stm32f30x_gpio.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/stm32f3-stdperiph/stm32f30x_gpio.d" -MT"system/src/stm32f3-stdperiph/stm32f30x_gpio.o" -c -o "system/src/stm32f3-stdperiph/stm32f30x_gpio.o" "../system/src/stm32f3-stdperiph/stm32f30x_gpio.c"
Finished building: ../system/src/stm32f3-stdperiph/stm32f30x_gpio.c
Building file: ../system/src/stm32f3-stdperiph/stm32f30x_rcc.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/stm32f3-stdperiph/stm32f30x_rcc.d" -MT"system/src/stm32f3-stdperiph/stm32f30x_rcc.o" -c -o "system/src/stm32f3-stdperiph/stm32f30x_rcc.o" "../system/src/stm32f3-stdperiph/stm32f30x_rcc.c"
Finished building: ../system/src/stm32f3-stdperiph/stm32f30x_rcc.c
Building file: ../system/src/newlib/_cxx.cpp
Invoking: Cross ARM C++ Compiler
arm-none-eabi-g++ -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu++11 -fabi-version=0 -fno-exceptions -fno-rtti -fno-use-cxa-atexit -fno-threadsafe-statics -MMD -MP -MF"system/src/newlib/_cxx.d" -MT"system/src/newlib/_cxx.o" -c -o "system/src/newlib/_cxx.o" "../system/src/newlib/_cxx.cpp"
Finished building: ../system/src/newlib/_cxx.cpp
Building file: ../system/src/newlib/_exit.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/newlib/_exit.d" -MT"system/src/newlib/_exit.o" -c -o "system/src/newlib/_exit.o" "../system/src/newlib/_exit.c"
Finished building: ../system/src/newlib/_exit.c
Building file: ../system/src/newlib/_sbrk.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/newlib/_sbrk.d" -MT"system/src/newlib/_sbrk.o" -c -o "system/src/newlib/_sbrk.o" "../system/src/newlib/_sbrk.c"
Finished building: ../system/src/newlib/_sbrk.c
Building file: ../system/src/newlib/_startup.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -DOS_INCLUDE_STARTUP_INIT_MULTIPLE_RAM_SECTIONS -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/newlib/_startup.d" -MT"system/src/newlib/_startup.d" -c -o "system/src/newlib/_startup.o" "../system/src/newlib/_startup.c"
Finished building: ../system/src/newlib/_startup.c
Building file: ../system/src/newlib/_syscalls.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/newlib/_syscalls.d" -MT"system/src/newlib/_syscalls.o" -c -o "system/src/newlib/_syscalls.o" "../system/src/newlib/_syscalls.c"
Finished building: ../system/src/newlib/_syscalls.c
Building file: ../system/src/newlib/assert.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/newlib/assert.d" -MT"system/src/newlib/assert.o" -c -o "system/src/newlib/assert.o" "../system/src/newlib/assert.c"
Finished building: ../system/src/newlib/assert.c
Building file: ../system/src/diag/Trace.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/diag/Trace.d" -MT"system/src/diag/Trace.o" -c -o "system/src/diag/Trace.o" "../system/src/diag/Trace.c"
Finished building: ../system/src/diag/Trace.c
Building file: ../system/src/diag/trace_impl.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/diag/trace_impl.d" -MT"system/src/diag/trace_impl.o" -c -o "system/src/diag/trace_impl.o" "../system/src/diag/trace_impl.c"
Finished building: ../system/src/diag/trace_impl.c
Building file: ../system/src/cortexm/_initialize_hardware.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/cortexm/_initialize_hardware.d" -MT"system/src/cortexm/_initialize_hardware.o" -c -o "system/src/cortexm/_initialize_hardware.o" "../system/src/cortexm/_initialize_hardware.c"
Finished building: ../system/src/cortexm/_initialize_hardware.c
Building file: ../system/src/cortexm/_reset_hardware.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/cortexm/_reset_hardware.d" -MT"system/src/cortexm/_reset_hardware.o" -c -o "system/src/cortexm/_reset_hardware.o" "../system/src/cortexm/_reset_hardware.c"
Finished building: ../system/src/cortexm/_reset_hardware.c
Building file: ../system/src/cortexm/exception_handlers.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/cortexm/exception_handlers.d" -MT"system/src/cortexm/exception_handlers.o" -c -o "system/src/cortexm/exception_handlers.o" "../system/src/cortexm/exception_handlers.c"
Finished building: ../system/src/cortexm/exception_handlers.c
Building file: ../system/src/cmsis/system_stm32f30x.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/cmsis/system_stm32f30x.d" -MT"system/src/cmsis/system_stm32f30x.o" -c -o "system/src/cmsis/system_stm32f30x.o" "../system/src/cmsis/system_stm32f30x.c"
Finished building: ../system/src/cmsis/system_stm32f30x.c
Building file: ../system/src/cmsis/vectors_stm32f30x.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/cmsis/vectors_stm32f30x.d" -MT"system/src/cmsis/vectors_stm32f30x.o" -c -o "system/src/cmsis/vectors_stm32f30x.o" "../system/src/cmsis/vectors_stm32f30x.c"
Finished building: ../system/src/cmsis/vectors_stm32f30x.c
Building file: ../system/src/FreeRTOSc/croutine.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/FreeRTOSc/croutine.d" -MT"system/src/FreeRTOSc/croutine.o" -c -o "system/src/FreeRTOSc/croutine.o" "../system/src/FreeRTOSc/croutine.c"
Finished building: ../system/src/FreeRTOSc/croutine.c
Building file: ../system/src/FreeRTOSc/event_groups.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/FreeRTOSc/event_groups.d" -MT"system/src/FreeRTOSc/event_groups.o" -c -o "system/src/FreeRTOSc/event_groups.o" "../system/src/FreeRTOSc/event_groups.c"
Finished building: ../system/src/FreeRTOSc/event_groups.c
Building file: ../system/src/FreeRTOSc/heap_1.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/FreeRTOSc/heap_1.d" -MT"system/src/FreeRTOSc/heap_1.o" -c -o "system/src/FreeRTOSc/heap_1.o" "../system/src/FreeRTOSc/heap_1.c"
Finished building: ../system/src/FreeRTOSc/heap_1.c
Building file: ../system/src/FreeRTOSc/list.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/FreeRTOSc/list.d" -MT"system/src/FreeRTOSc/list.o" -c -o "system/src/FreeRTOSc/list.o" "../system/src/FreeRTOSc/list.c"
Finished building: ../system/src/FreeRTOSc/list.c
Building file: ../system/src/FreeRTOSc/port.c
Invoking: Cross ARM C Compiler
arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -Wall -Wextra -g -DOS_USE_TRACE_SEMIHOSTING_DEBUG -DSTM32F30X -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f3-stdperiph" -I"D:\Elektronik ve Meslekle\Projelerim\2015\RtosWrapper\system\include\FreeRTOSh" -std=gnu11 -MMD -MP -MF"system/src/FreeRTOSc/port.d" -MT"system/src/FreeRTOSc/port.o" -c -o "system/src/FreeRTOSc/port.o" "../system/src/FreeRTOSc/port.c"
C:\Users\Namcho\AppData\Local\Temp\cc5F19lf.s: Assembler messages:
C:\Users\Namcho\AppData\Local\Temp\cc5F19lf.s:372: Error: selected processor does not support Thumb mode `vstmdbeq r0!,{s16-s31}'
C:\Users\Namcho\AppData\Local\Temp\cc5F19lf.s:374: Error: instruction not allowed in IT block -- `stmdb r0!,{r4-r11,r14}'
C:\Users\Namcho\AppData\Local\Temp\cc5F19lf.s:395: Error: selected processor does not support Thumb mode `vldmiaeq r0!,{s16-s31}'
C:\Users\Namcho\AppData\Local\Temp\cc5F19lf.s:397: Error: instruction not allowed in IT block -- `msr psp,r0'
make: *** [system/src/FreeRTOSc/port.o] Error 1
system/src/FreeRTOSc/subdir.mk:39: recipe for target 'system/src/FreeRTOSc/port.o' failed
18:05:31 Build Finished (took 3s.613ms)