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

How to remove files from a Workbench generated HAL project.


I created a project using the Workbench and selected HAL libraries and opted for the inclusion of STemWin.

After fixing the usual sorts of issues in the main project, the build of the library project crapped out trying to compile a file intended for the Windows emulation. The file is WinMain.c and the only procedure in it is:

int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,  LPSTR lpCmdLine, int nCmdShow) {
  return SIM_GUI_App(hInstance, hPrevInstance,  lpCmdLine, nCmdShow);

Edit: The easy way out on this is to just comment out all of the code in the WinMain file.


There is two easy ways to avoid source code to be compiled:

  1. Just delete the source file from your project cool
  2. Mark the file (or a complete directory) as not to be compiled, if you want to keep it for reference, by
    • file (or folder) >> Properties >> C/C++ Build >> Exclude Resource from build
      Exclude Resource From Build
    • Then the file (or folder) should be listed at the end of the files (or folders) list, grayed and its icon barred by a slash: Excluded File


Thank you, Bernard, I was not previously aware of that file property.