Loading...
 

STM32MP1 support available in SW4STM32

   With System Workbench for Linux, Embedded Linux on the STM32MP1 family of MPUs from ST was never as simple to build and maintain, even for newcomers in the Linux world.
And, if you install System Workbench for Linux in System Workbench for STM32 you can seamlessly develop and debug asymmetric applications running partly on Linux, partly on the Cortex-M4; you can download a short video showcasing this on the ac6-tools website (registration required).

System Workbench for STM32


You are viewing a reply to Contradictory Warnings.  

Contradictory Warnings.

France

Hi,

I think all your problems come from copy-pasting existing code without looking at what you are copying: you should suppress the static definitions in all the _pub declarations and definitions (in the .c and .h files you created) and it should work.

In fact the first warning says that you define SDADC_EnterInitMode_pub as a static function in stm32f3xx_hal_pub.h (that you obviously include in one of your code files); the second say that you define it, always as static, probably by including stm32f3xx_hal_pub.h, in stm32f3xx_hal_pub.c, but never use it in this file (quite normal indeed for an extern function, but not for a static function) and the third one says that, in some source file, you included stm32f3xx_hal_pub.h and try to use SDADC_EnterInitMode_pub, but as this file was not stm32f3xx_hal_pub.c it does not include any definition for this static function.

All this is due to overlooking the static keyword: when used for some global object, it restricts its visibility to the current compilation unit (the main .c file and the included files); this symbol will not be visible by other compile units.

Bernard (Ac6)