2024-02-25 02:35 PM
Hello,
I am trying to setup clang (and later clang-tidy) in a project. To test clang integration with STM32F4 board I did several steps :
1. I created a default NUCLEO413 project,
2. I compiled it using the default generated Makefile
3. I created a CMake file configured with the linaro toolchain
All these steps works fine.
so I began switching to clang toolchain. But now I do have issues, Compilation raises warnings about unused flags :
clang: warning: argument unused during compilation: '-D STM32F413xx=1' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-D USE_HAL_DRIVER=1' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-fdata-sections' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-ffunction-sections' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '--gcc-toolchain=~/.local/bin/gcc-arm-none-eabi-10.3-2021.10/bin/' [-Wunused-command-line-argument]
I don't know why I do have all these flag, it's like clang raises warnings at each file being compiled.
I don't figure out why clang raises --gcc-toolchain warning. It seems clang needs compilation information and so the gcc-toolchain can be passed to clang to help him find the compiled libs. but no matter the path I set to --gcc-toolchain, I cannot clear this warning.
Plus the link finishes with an error :
ld.lld: error: /home/toto/STM32Cube/test/test/STM32F413ZHTx_FLASH.ld:56: memory region not defined: RAM
>>> _estack = ORIGIN(RAM) + LENGTH(RAM); /* end of RAM */
>>> ^
clang: error: ld.lld command failed with exit code 1 (use -v to see invocation)
I add the CMakeLists and the compilation results.
I don't find any information about these kind of errors. Do you have any idea or any clue to help me ?
Thank you
2024-05-25 11:24 PM
Place the MEMORY block above the _estack and below the ENTRY in linker script .ld file. lld follow the order thats why it could not find the RAM
2024-05-25 11:28 PM
I compiled code successfuly using clang toolchain but when i wrote the code on controller it got stuck. I am trying to run a simple blink program. Let me know if any one run code successfully on stm32 using clang.