2026-01-19 3:06 PM
Hello,
I am developing via a CMake project in VSCode. My build environment got corrupted by trying to mv/rename firmware folders via git. Now i cannot build anymore.
[ 1%] Building C object cmake/stm32cubemx/CMakeFiles/FreeRTOS.dir/__/__/Middlewares/Third_Party/FreeRTOS/Source/event_groups.c.o
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h: Assembler messages:
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:195: Error: operand type mismatch for `mov'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:196: Error: no such instruction: `msr basepri,%eax'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:197: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:198: Error: invalid instruction suffix for `ds'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:195: Error: operand type mismatch for `mov'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:196: Error: no such instruction: `msr basepri,%eax'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:197: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:198: Error: invalid instruction suffix for `ds'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:195: Error: operand type mismatch for `mov'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:196: Error: no such instruction: `msr basepri,%eax'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:197: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:198: Error: invalid instruction suffix for `ds'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:195: Error: operand type mismatch for `mov'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:196: Error: no such instruction: `msr basepri,%eax'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:197: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:198: Error: invalid instruction suffix for `ds'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:195: Error: operand type mismatch for `mov'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:196: Error: no such instruction: `msr basepri,%eax'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:197: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:198: Error: invalid instruction suffix for `ds'
/home/jonas/repos/aware01/firmware2_1/Middlewares/Third_Party/FreeRTOS/Source/event_groups.c:255: Error: invalid instruction suffix for `ds'
/home/jonas/repos/aware01/firmware2_1/Middlewares/Third_Party/FreeRTOS/Source/event_groups.c:255: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:195: Error: operand type mismatch for `mov'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:196: Error: no such instruction: `msr basepri,%eax'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:197: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:198: Error: invalid instruction suffix for `ds'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:195: Error: operand type mismatch for `mov'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:196: Error: no such instruction: `msr basepri,%eax'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:197: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:198: Error: invalid instruction suffix for `ds'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:195: Error: operand type mismatch for `mov'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:196: Error: no such instruction: `msr basepri,%eax'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:197: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:198: Error: invalid instruction suffix for `ds'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:195: Error: operand type mismatch for `mov'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:196: Error: no such instruction: `msr basepri,%eax'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:197: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:198: Error: invalid instruction suffix for `ds'
/home/jonas/repos/aware01/firmware2_1/Middlewares/Third_Party/FreeRTOS/Source/event_groups.c:403: Error: invalid instruction suffix for `ds'
/home/jonas/repos/aware01/firmware2_1/Middlewares/Third_Party/FreeRTOS/Source/event_groups.c:403: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:195: Error: operand type mismatch for `mov'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:196: Error: no such instruction: `msr basepri,%eax'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:197: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:198: Error: invalid instruction suffix for `ds'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:195: Error: operand type mismatch for `mov'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:196: Error: no such instruction: `msr basepri,%eax'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:197: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:198: Error: invalid instruction suffix for `ds'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:211: Error: no such instruction: `mrs %edx,basepri'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:212: Error: operand type mismatch for `mov'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:213: Error: no such instruction: `msr basepri,%eax'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:214: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:215: Error: invalid instruction suffix for `ds'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:229: Error: no such instruction: `msr basepri,%eax'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:195: Error: operand type mismatch for `mov'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:196: Error: no such instruction: `msr basepri,%eax'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:197: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:198: Error: invalid instruction suffix for `ds'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:195: Error: operand type mismatch for `mov'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:196: Error: no such instruction: `msr basepri,%eax'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:197: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:198: Error: invalid instruction suffix for `ds'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:195: Error: operand type mismatch for `mov'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:196: Error: no such instruction: `msr basepri,%eax'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:197: Error: no such instruction: `isb'
/home/jonas/repos/aware01/firmware2_1/cmake/stm32cubemx/../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/portmacro.h:198: Error: invalid instruction suffix for `ds'
make[2]: *** [cmake/stm32cubemx/CMakeFiles/FreeRTOS.dir/build.make:93: cmake/stm32cubemx/CMakeFiles/FreeRTOS.dir/__/__/Middlewares/Third_Party/FreeRTOS/Source/event_groups.c.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:177: cmake/stm32cubemx/CMakeFiles/FreeRTOS.dir/all] Error 2
make: *** [Makefile:91: all] Error 2
build finished with error(s).
I already tried deleting the build folder via `rm -rf build/Debug`
and then regenerate CMake `cube-cmake -S . -B build/Debug`
After that i regenerated the CubeMX project.
The error persists.
It looks like CMake is trying to build for an M4 instruction set, despite me having setup H7 in CubeMX.
It worked like a charm before. I am really stuck, would appreciate some help!
Best Jonas