SW4STM32 and SW4Linux fully supports the STM32MP1 asymmetric multicore Cortex/A7+M4 MPUs

   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 get more information from the ac6-tools website and download (registration required) various documents highlighting:

System Workbench for STM32

You are viewing a reply to Contradictory Warnings.  

Contradictory Warnings.



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)