Hello,
I have a FRDM-MCXA153 dev kit. I am using MCUXpresso IDE v11.9.0 [Build 2144] [2024-01-05]. I have downloaded many SDK example programs such as frdmmcxa153_led_blinky and frdmmcxa153_flashiap. When programmed onto the board these applications run. I want to use this chip as the base for many future projects, as such I took common folders and files from the SDK such as startup, device, component, etc and created a gitlab submodule that I can include into my projects.
Above is the unedited frdmmcxa153_flashiap project, this builds.
Here is my project structure highlighting the submodule. In my project properties C/C++ Build -> MCU C Compiler -> Includes added all of the appropriate folders. My project builds.
I also added the folders to C/C++ Build -> MCU Assembler -> General.
I was building the SDK example and my project . I noted a warning in my project
c:/nxp/mcuxpressoide_11.9.0_2144/ide/plugins/com.nxp.mcuxpresso.tools.win32_11.9.0.202307121226/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/bin/ld.exe: warning: cannot find entry symbol ResetISR; defaulting to 00000000
When I open startup_mcxa153.c in the SDK example and ctrl + click on SystemInit I am taken to system_MCXA153.c. In my project a ctrl + click does nothing.
So I know there is something not correctly linked in my project. Can anyone determine what I may be missing? I am free to post screenshots as needed. I would like to sort this out ASAP as I am trying to prototype a new product.
You are on the right track, and you spotted the correct linker message.
The message indicates that you are not linking with the startup code, or with the wrong one.
Have a close look at the folder icons, or the icon decorator:
Your folder with the startup code is not compiled, because it has been 'excluded from build'. You have to include it into the build, with the folder settings.
Seet icon decorators and 'exclude from build' on my blog:
https://mcuoneclipse.com/2012/07/30/icon-and-label-decorators-in-eclipse/
https://mcuoneclipse.com/2012/04/16/symbol-defined-or-not-thats-the-question/
I hope this helps,
Erich
I had to add more paths and symbols to my project.
I created a new project and ensured it could be programmed onto my device. I created a new folder called startup_test, I then moved startup_mcxa153.c from the folder startup to the folder startup_test. Suddenly I see the warning
c:/nxp/mcuxpressoide_11.9.0_2144/ide/plugins/com.nxp.mcuxpresso.tools.win32_11.9.0.202307121226/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/bin/ld.exe: warning: cannot find entry symbol ResetISR; defaulting to 00000000
I opened .cproject and found <entry flags="LOCAL|VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="startup"/>
I changed it to <entry flags="LOCAL|VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="startup_test"/>
Now my test application programs onto my board. I will try this with my application as well, but I am wondering where in the IDE do I make this change?
By updating the source path through the IDE’s Paths and Symbols settings, you ensure that all the necessary project configurations are handled correctly, which prevents potential errors from manual .cproject file edits. This also allows you to easily manage and track changes through the IDE’s interface, which is particularly useful when managing larger projects.
BR
Hang