Skip to main content
carlesls2
Associate III
March 24, 2025
Solved

what causes these libc_nano.a errors?

  • March 24, 2025
  • 3 replies
  • 2551 views

Description Resource Path Location Type
C:/ST/STM32CubeIDE_1.18.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.13.3.rel1.win32_1.0.0.202411081344/tools/bin/../lib/gcc/arm-none-eabi/13.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(libc_a-closer.o): note: the message above does not take linker garbage collection into account RA40 C/C++ Problem
C:/ST/STM32CubeIDE_1.18.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.13.3.rel1.win32_1.0.0.202411081344/tools/bin/../lib/gcc/arm-none-eabi/13.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(libc_a-lseekr.o): note: the message above does not take linker garbage collection into account RA40 C/C++ Problem
C:/ST/STM32CubeIDE_1.18.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.13.3.rel1.win32_1.0.0.202411081344/tools/bin/../lib/gcc/arm-none-eabi/13.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(libc_a-readr.o): note: the message above does not take linker garbage collection into account RA40 C/C++ Problem
C:/ST/STM32CubeIDE_1.18.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.13.3.rel1.win32_1.0.0.202411081344/tools/bin/../lib/gcc/arm-none-eabi/13.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(libc_a-writer.o): note: the message above does not take linker garbage collection into account RA40 C/C++ Problem
_close is not implemented and will always fail RA40 C/C++ Problem
_lseek is not implemented and will always fail RA40 C/C++ Problem
_read is not implemented and will always fail RA40 C/C++ Problem
_write is not implemented and will always fail RA40 C/C++ Problem

 

 

What causes this error? I do not know why or when it apeared and how to erase it. 

Thanks for all. 

 

Best answer by Andrew Neil

@Andrew Neil wrote:

I think that the messages you have there are just warnings - not errors?


Indeed they are - see:

https://community.st.com/t5/stm32cubeide-mcus/stm32cubeide-1-13-0-problem/m-p/573904/page/3

"this is ‘just’ a warning, and the linker is able to generate a proper ELF file. As long as your application does not use read/write/close/lseek (which should be the case for a bare metal application), your application will run properly."

 

Also, I think that CubeIDE only produces these warning on the very first build of a new project - they don't appear in subsequent builds?

3 replies

Andrew Neil
Super User
March 24, 2025

I can't read that image!

Please copy & paste the messages at text.


OP has been changed - now it's just the text, no image.

A complex system that works is invariably found to have evolved from a simple system that worked.A complex system designed from scratch never works and cannot be patched up to make it work.
Andrew Neil
Super User
March 24, 2025

Please don't edit a post after it's had replies - especially when it means existing replies no longer make sense!

Those messages seem to be in the wrong order; eg, the first one refers to "the message above".

That's the trouble with CubeIDE's  'Problems' view - it reorders the message.

So best to copy from the 'Console' view.

Sorry - forgot to mention that this time:

https://community.st.com/t5/stm32cubeide-mcus/stmcubeide-generating-errors-in-the-driver-files-on-creation-of/m-p/97912/highlight/true#M2765

 

But I think that the messages you have there are just warnings - not errors?

 

A complex system that works is invariably found to have evolved from a simple system that worked.A complex system designed from scratch never works and cannot be patched up to make it work.
Andrew Neil
Andrew NeilBest answer
Super User
March 24, 2025

@Andrew Neil wrote:

I think that the messages you have there are just warnings - not errors?


Indeed they are - see:

https://community.st.com/t5/stm32cubeide-mcus/stm32cubeide-1-13-0-problem/m-p/573904/page/3

"this is ‘just’ a warning, and the linker is able to generate a proper ELF file. As long as your application does not use read/write/close/lseek (which should be the case for a bare metal application), your application will run properly."

 

Also, I think that CubeIDE only produces these warning on the very first build of a new project - they don't appear in subsequent builds?

A complex system that works is invariably found to have evolved from a simple system that worked.A complex system designed from scratch never works and cannot be patched up to make it work.
TDK
Super User
March 24, 2025
"If you feel a post has answered your question, please click ""Accept as Solution""."
Andrew Neil
Super User
March 24, 2025

That thread relates to CubeIDE v1.15.0, and says it should have been fixed, "on the next releases".

@carlesls2 What version are you using?

@STTwo-32 did it get fixed?

 

PS:

From the pathnames in @carlesls2's  OP, looks like v1.18.0 ...

A complex system that works is invariably found to have evolved from a simple system that worked.A complex system designed from scratch never works and cannot be patched up to make it work.