cancel
Showing results for 
Search instead for 
Did you mean: 

Mising startup file

jasonp4113
Associate II
Posted on September 23, 2014 at 01:44

Hi All,

I have done a search to no avail on this:

Using Keil tools and Cube 4.3.1 (STM32F407), generating the project results in missing the startup file - but only at random.

The folder ''Application/MDK-ARM'' does not get generated or included in the project.

Re-creating the project again with cube will then put it back in - but this is annoying to have to do this.
7 REPLIES 7
stm32cube-t
Senior III
Posted on September 24, 2014 at 10:40

Hello Jason,

Do you still encounter this issue? We are unable to reproduce it.

Can you share your settings Projects and Code Generation from the Project Menu, and other information that may help us?

Thank you

Osto
Senior
Posted on September 24, 2014 at 13:32

Dear Jason,

I had exactly the same problem. The bug is that when you start the STMCube, the first generation dont include the startup file. If you generate second, third,.... project then they is produced correctly.

Please also take care that the SRMCube add additional files to the project C/C++ include file list. This will grow every time you generate a new project. You have to check this after each 10-15 generation cycles and cleanup the C/C++ include paths else Keil will fail with ununderstandable errors.

In addition you have to take care about the debug setting of your project. If you have a SWD debugger (like in all STMxxxDiscovery products), sometimes Cube will change the debugger type to JTAG which will fail next time you want to debug.

You need also to take care about the FULL_ASSERT option in the generation options. This will randomly call assert (if you use complex timers) without any reason because some of the values are randoly from last ram access from other program parts but they will not cleared correctly by init sequence but will be check at assert. This will cause to searching a phantom error.

I hope this could help you.
Osto
Senior
Posted on September 24, 2014 at 13:36

Hi,

I reported this issue with sample IOC file before but I had no reaction on that.

I can reproduce this failure 100 times with exactly the same result.

Regards
jasonp4113
Associate II
Posted on September 25, 2014 at 01:31

Hi

I can confirm that this issue happens only the first when the project is loaded in cube and rebuilt. Rebuilding again restores the start-up file and folders. I hope that helps track it down...

I have also noticed as you have (but only a few times so I can't pinpoint anything...) that some files get included again into the Keil structure each time the project is recreated, resulting in multiple copies of the same files being included. It seems that once this happens - it keeps happening. Restoring the project from a back up fixes it, so it seems quite random.

Also as you have noted, some of the project settings such as SWD/JTAG choice and also ''RESET and RUN'' get reset (ST-link debugger selected)

Cheers - Jas

Osto
Senior
Posted on September 26, 2014 at 00:01

Hi,

I think I didnt explain the issue with include file exact enough. The Cube add the path of include files of FW to the Keil's project for C/C++ compiler. This should happen only once but this will happen every time when the project is generated. So the include path will grow and grow until Keil's compiler fails. You need to know that I added 2 of my personal include directory to the project. So the include path is not exactly as produced by Cube.

If you need additional information to be able to reproduce this error, please let me know.

Best regards,

Mehrdad
jasonp4113
Associate II
Posted on September 26, 2014 at 08:43

I see what you mean - between the <

IncludePath

> and </

IncludePath

>

Definitely a cube bug (for Keil at least)!

It looks like (so far) I have created the cube project 18 times in my current project!!!

Thx for the heads up on that

Jason

stm32cube-t
Senior III
Posted on October 06, 2014 at 17:23

Hello,

The fix for this issue will be delivered with STM32CubeMX version 4.5.

Best regards.