1.1 KiB
Executable file
Algorithms-c
This subproject contains all C Code for the benchmarking. It is built with ceedling, a more modern build tool for C projects that also integrates well with the Unity framework.
Compiler
To compile for STM32, you need to crosscompile
# apt install binutils-arm-none-eabi gcc-arm-none-eabi
Then, use your tool with an arm-none-eabi-
prefix: arm-none-eabi-gcc
. This
project has been configured to use the compiler specified in $CC
to compile modules and $AR
to
"link" the object files (this should be ar
for a static library like this).
# compile for STM32
CC=arm-none-eabi-gcc AR=arm-none-eabi-ar ceedling release
# compile for this computer
CC=gcc AR=ar ceedling release
It is also critically important to define the -march=ARCH
option when using arm-none-eabi-gcc
, since the compiler will otherwise just assume a target architecture. In this case, it needs to be set to armv6-m
, since the MPU is a cortex-M0+
. This MPU does only support the thumb instructionset, not the ARM32 set.