Creating and working with header files is confusing for users
It seems there is a bug, when I link the *.s file to the root folder of the project. Then the assembler is invoked with a non-existing path for some reason. After I link the *.s file to a subfolder of the project, everything is working fine.
So to summarize: I removed all the linked resources from the project and I only linked 1 file and 4 folders into the project:
- the *.s file (linked into a subfolder, see screenshot)
- Src folder
- Inc folder
- Drivers folder
- Middlewares folder
The project builds just fine. I can create header files by right-clicking the (linked) Inc folder and they also end up in the Inc folder in the filesystem. I can create new *.c files by right-clicking the (linked) Src folder, and they also end up in the Src folder in the filesystem. I can change defines in the header files and that properly triggers the CDT indexer. E.g. errors will be shown in other editors when the old macro name is used after the macro has been renamed.
Now the obvious drawback is that my .project file will be overwritten every time I generate code from CubeMX.
However, working with the project is so much more convenient now.