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 two short videos (registration required) highlighting:

System Workbench for STM32

You are viewing a reply to No symbol table?  

No symbol table?

>> How did you create the project (CubeMX or System Workbench)?


>> How did you create the Release (no-debug) build configuration (if you have to, that is if you created the project using CubeMX)?

Manage Configurations -> New... -> (enter name and description, copy from Debug) -> OK

Then Project -> Properties -> C/C++ Build -> Settings
Select Configuration: Release
-> Debugging to None
-> Optimization to Most
(Just retested, at this point all is well)

Exit ac6, Run CUBE, make some changes

Restart ac6


Poof, Sybols are gone.

(So, obvious in the retest that it’s Cube thats the problem, not ac6)

>> How did you select the Release build? Did you activate the Release build configuration (project >> Build Configurations >> Set Active >> Release or Debug)?

In the retest I never selected the Release build.

>> Build configurations place their output in directory trees named after the configuration (Debug or Release); Could you check the debugging configuration (project >> Debug As >> Debug Configurations...) and verify it selects the right executable (Debug/program.elf or Release/program.elf)?

It selected the correct elf.

>> Could you compare the .project/.cproject files before and after doing the Release build?

The first time I did not have a saved project, instead I had another project (similar, same board) that was still working.

When I compared the .project files there were a match (names were different of course).



Hi Matt,

OK, now I understand better; the problem is obviously coming from the re-gereration of the project by CubeMX.
Which version of CubeMX are you using, and which generation options have you selected?
With earlier versions of CubeMX (and possibly also the last one...) if you modified the project under Eclipse, CubeMX get lost and confuse things... In this case, the best bet is to save the .project and .cproject files before regenerating with CubeMX, then restore the saved ones before restarting System Workbench...

Anyway, if you don’t select new third-party components (like FreeRTOS) CubeMX should not modify the project, only modify source files. This is especially true with the last version of CubeMX if you generate the project in the root directory.

Sorry for the inconvenience,

Bernard (Ac6)


Hi Matt,

It seems that is a known problem with CubeMX that is still present in v4.14 but should be solved by the upcoming v4.15. In fact the problem is that some source files are not compiled due to project file corruption, so the debugger is not able to correctly debug the program.

In the mean time, the only workaround I see is saving and restoring the .project and .cproject files when regenerating the source code from CubeMX; not so convenient but the new release should come out soon.

Bernard (Ac6)