2024-10-30 07:32 AM
Hello,
I've got two NUCLEO-STM32H7S3L8 boards and started playing around with those. I created a project in STM32CubeIDE and used the standard template for the board with the generated example data. STM32CubeMX generated the "Appli," "Boot," and "ExtMemLoader" projects, but they seem to have some errors.
Here's what I found so far:
"Appli"-Project:
This line of generated code:
#elif defined ( __GNUC__ ) || defined ( __ARMCC_VERSION )) /* GNU Compiler */
This led to this compiling error:
../Core/Src/eth.c:36:58: error: missing '(' in expression
36 | #elif defined ( __GNUC__ ) || defined ( __ARMCC_VERSION )) /* GNU Compiler */
| ^
../Core/Src/eth.c: In function 'MX_ETH_Init':
../Core/Src/eth.c:73:22: error: 'DMATxDscrTab' undeclared (first use in this function)
73 | heth.Init.TxDesc = DMATxDscrTab;
| ^~~~~~~~~~~~
../Core/Src/eth.c:73:22: note: each undeclared identifier is reported only once for each function it appears in
../Core/Src/eth.c:74:22: error: 'DMARxDscrTab' undeclared (first use in this function)
74 | heth.Init.RxDesc = DMARxDscrTab;
| ^~~~~~~~~~~~
That one is an easy fix I deleted that last bracket and it compiles just fine. It's annoying because it must be done every time you run code generation after STM32CubeMX changes.
"ExtMemLoader"-Project:
After building the project, this message appears:
bash "../postbuild.sh" "C:\ST\STM32CubeIDE_1.13.2\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.cubeprogrammer.win32_2.1.400.202404281720\tools\bin/ExternalLoader"
STM32CUBE IDE is found!
cp: can't stat 'Intector/project_team/STM/workbench/STM32H7S3L8-CHECK/ExtMemLoader/Debug/STM32H7S3L8-CHECK_ExtMemLoader.elf': No such file or directory
warning :: File copy failed under STM32CubeProgrammer please check that the folder exists or you have the right permission to copy the ExtMemLoader.
cp: can't stat 'Intector/project_team/STM/workbench/STM32H7S3L8-CHECK/ExtMemLoader/Debug/STM32H7S3L8-CHECK_ExtMemLoader.elf': No such file or directory
warning :: File copy failed under STM32CubeIDE please check that you have the right permission to copy the ExtMemLoader.
I have no idea what to do with that. The folder exists, and I have "write access" to it. Also, why does the message show up twice?
"Project Explorer":
The project names "Boot" and "ExtMemLoader" have little warning signs on the icons. What do those mean?
Never forget:
"Always be yourself. Unless you can be a pirate. Then always be a pirate."
Solved! Go to Solution.
2024-10-31 01:26 PM
Hello Imen.D,
Thank you for your help with my question.
The STM32CubeIDE version I'm using is the latest:
I looked a little deeper into the issue and found that after the "ExtMemLoader" project is built, the " postbuild.sh" script is running. This script renames the .elf file and copies it to two different locations.
One is:
C:\Program Files\STMicroelectronics\STM32Cube\STM32CubeProgrammer\bin/ExternalLoader/STM32H7S3L8_TEMPLATE_XIP_ExtMemLoader.stldr
The other one is:
C:\ST\STM32CubeIDE_1.13.2\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.cubeprogrammer.win32_2.1.400.202404281720\tools\bin/ExternalLoader/STM32H7S3L8_TEMPLATE_XIP_ExtMemLoader.stldr
Those directories were read-only on my computer's user level, which caused the problem. I changed the access rights, and everything worked fine.
Again, thank you for your help.
I still don't know what those warning signs on the project icons for the Boot and ExtMemLoader projects mean.
2024-10-30 01:28 PM
Hello @Intector ,
Could you please share your project file for analysis and reproduce this issue, and please provide more details about tools version used.
2024-10-30 01:33 PM
2024-10-31 10:19 AM
Hello @Intector ,
I'm not able to reproduce the same warning in my environment and using latest release of CubeMX and CubeIDE (v1.16.x).
Please update the CubeIDE version and keep me informed about your progress.
2024-10-31 01:26 PM
Hello Imen.D,
Thank you for your help with my question.
The STM32CubeIDE version I'm using is the latest:
I looked a little deeper into the issue and found that after the "ExtMemLoader" project is built, the " postbuild.sh" script is running. This script renames the .elf file and copies it to two different locations.
One is:
C:\Program Files\STMicroelectronics\STM32Cube\STM32CubeProgrammer\bin/ExternalLoader/STM32H7S3L8_TEMPLATE_XIP_ExtMemLoader.stldr
The other one is:
C:\ST\STM32CubeIDE_1.13.2\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.cubeprogrammer.win32_2.1.400.202404281720\tools\bin/ExternalLoader/STM32H7S3L8_TEMPLATE_XIP_ExtMemLoader.stldr
Those directories were read-only on my computer's user level, which caused the problem. I changed the access rights, and everything worked fine.
Again, thank you for your help.
I still don't know what those warning signs on the project icons for the Boot and ExtMemLoader projects mean.