cancel
Showing results for 
Search instead for 
Did you mean: 

CMSIS error "cannot find -llibarm_cortexM7lfdp_math.a"

carloV
Associate III

When I build  my project in "Debug" mode all works fine, if I build the project in "Release" mode an error appears:

 

C:/ST/STM32CubeIDE_2.0.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.13.3.rel1.win32_1.0.100.202509120712/tools/bin/../lib/gcc/arm-none-eabi/13.3.1/../../../../arm-none-eabi/bin/ld.exe: cannot find -llibarm_cortexM7lfdp_math.a: No such file or directory

 

GCC linker

Libraries (-l):                     libarm_cortexM7lfdp_math.a

Library search path (-L):   "${workspace_loc:/${ProjName}/Drivers/CMSIS/Lib/GCC}"   

 

Any help ?

Thank you

1 ACCEPTED SOLUTION

Accepted Solutions

The message is from the Linker, so it should be in the Linker settings somewhere.

You could try saving the build output from the two configurations, and compare them ...

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.

View solution in original post

7 REPLIES 7
Andrew Neil
Super User

@carloV wrote:

When I build  my project in "Debug" mode all works fine, if I build the project in "Release" mode an error appears


"Debug" and "Release" are just different sets of configuration options.

So this means that something's missing in your "Release" configuration; specifically, something which allows it to find that libarm_cortexM7lfdp_math.a library.

So carefully compare & contrast the linker settings for the two configurations.

 


@carloV wrote:

GCC linker

Libraries (-l):                     libarm_cortexM7lfdp_math.a

Library search path (-L):   "${workspace_loc:/${ProjName}/Drivers/CMSIS/Lib/GCC}"   


Is that from the "Debug" or "Release" configuration?

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.

Thank you for your reply,

I set the configuration as "Release", then I insert the library name and the library path into the MCU GCC Linker -> Library

CarloV

Thank you for your reply,

I set the configuration as "Release", then I insert the library name and the library path into the MCU GCC Linker -> Library

CarloV

Immagine 2025-12-30 155252.png

Immagine 2025-12-30 155439.png

Andrew Neil
Super User

So, again, carefully compare & contrast the settings for the two configurations ("Debug" and "Release").

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.

Ok,

they seem the same...what concerns the linker (GCC linker), there are no differences...do you think that I have to check other part of the setting ?

 

CarloV

The message is from the Linker, so it should be in the Linker settings somewhere.

You could try saving the build output from the two configurations, and compare them ...

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.