cancel
Showing results for 
Search instead for 
Did you mean: 

How to fix "Warning: cannot find entry symbol Reset_Handler; defaulting to 0000000008000000"

LJohn.1
Associate II

I created a new project in STMCubeIDE, and I get the above warning. I have the startup file in my project, and it has Reset_Handler defined. I looked through all the project properties, and I didn't notice anything was wrong.

Can someone tell me why my project can't find the Reset_Handler?

1 ACCEPTED SOLUTION

Accepted Solutions
LJohn.1
Associate II

I just fixed my own issue. Just in case anyone else encounters this, here's the solution.

I needed to add the folder containing my start-up file to project properties->Paths and Symbols->Source Location

View solution in original post

3 REPLIES 3
LJohn.1
Associate II

I just fixed my own issue. Just in case anyone else encounters this, here's the solution.

I needed to add the folder containing my start-up file to project properties->Paths and Symbols->Source Location

For me it was the /core/startup/ folder was entirely missing.

I fixed it by making a new project with the same MCU, then copying the folder to my own project.

But, yeah, your answer helped me find the problem, so thanks!

paul19
Associate III

Handlers are defined in an assembler startup file, which is generated automatically by STM32CubeIDE or STM32CubeMX. The file is located in a folder called "Startup" at the root of your project. It is named after your MCU, for example startup_stm32f303xe.s, startup_stm32l476rgtx, etc.

The warning "cannot find entry symbol Reset_Handler" means the startup file is either 1. corrupted, 2. missing, or 3. not included in your build. To fix cases 1 and 2, simply re-generate the code from STM32CubeIDE or STM32CubeMX.

Case 3 is more interesting. Upon code generation, STM32CubeIDE and STM32CubeMX sometimes mark the "Startup" folder as "Exclude from build". To make things worse, the folder doesn't have the "excluded" icon, so there's no obvious way to notice it. So you need to right-click the "Startup" folder, go to "C/C++ Build" and uncheck the "Exclude resource from build" checkbox. This issue seems to arise randomly, often with projects copied from other projects.