cancel
Showing results for 
Search instead for 
Did you mean: 

STM32CubeIDE 1.13.0 problem

Phillip Wolstencroft
Associate II

I have just updated the IDE from 1.12.1 and updated my project as requested but I have encountered an issue when compiling.

I get 3 errors on previously compiling  source code. as follows

PhillipWolstencroft_0-1689145531697.png

Can you help with what might be the problem?

PhilW

30 REPLIES 30
Peter BENSCH
ST Employee

I have the impression that we should tackle the problem properly for once. I got similar warnings when I imported a rather old project.
After a little investigation, I found the cause: it probably does not depend on the respective firmware version, but occurs due to newlib and references to undeclared functions. If these functions are not used in the respective project and one could therefore debug them, it probably helps to define the functions in main.c under private defines. I have defined the functions as weak so that you can always add them and not get errors if they are defined in the project anyway, e.g.:

 

// to extend/modify depending on the behaviour in your project

__attribute__((weak)) void _close(void){}
__attribute__((weak)) void _lseek(void){}
__attribute__((weak)) void _read(void){}
__attribute__((weak)) void _write(void){}

 

Hope that helps?

Regards
/Peter

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
OHaza.1
Associate III

I had this problem on an old project.

I changed the runtime library from reduced C 8168770e-c53c-4dfb-b401-2bd997c7d989.jpgto runtime C and it built.

mfrank9
Associate III

It's sad that this topic is already a month old and there is still no STM32CubeIDE version that fixes this.
Consider that this would affect a lot of users.

In the meantime I know some who have therefore switched to an older version.

Mohammed Eshaq
Associate III

Same thing happened with me when I updated my CubeIDE. It's becuase of the updated GNU toolchain.

Go to your project's properties, C/C++ Build, Settings, Open Toolchain Manager, then install a toolchain older than your current one. When done, use the GNU toolchain that you just installed and the issues should go away.

 

MohammedEshaq_0-1692007274707.png

 

Unfortunately, that didn't work in my case.

Thanks. Changing the tollchain worked for me too 🙂

This is working just fine, Thank you Peter

Thanks for the fix Peter!

After upgrading to 1.13.1, I had the exact same issue as others, but this trick fixed them!

 

MGall.11
Associate III

Hi everybody,

I have the same problem working on an old workspace with STM32L4 fw package 1.11.0. The trick suggested by Peter works for me, but I would like to know if it depends on the old fw package or there is something else. I have regenerated the code from CubeMX and I have added my sources keeping the old version of HAL, LL and CMSIS libraries. I'm also using FreeRTOS version 10.1.1. So, doing this, only the project files have been updated (.cproject and .project files), but the problem is still there. Does anyone help me to figure it out? Which library has a reference to (or use) these "undeclared functions"?

Thanks in advance.

HBoss.1
Associate II

Same Problem here. Solved as follows:

- create a new project with 1.13.1
- grab the files syscalls.c and sysmem.c from Core/Src
- add those files to your existing project

You're done