Skip to main content
Associate II
July 22, 2026
Question

Missing DSP lib files in STM32Cube_FW_H7_V1.13.0 distribution – CMSIS/DSP library

  • July 22, 2026
  • 5 replies
  • 45 views

Hello,

I noticed that in the STM32Cube_FW_H7_V1.13.0 distribution, the folder \Drivers\CMSIS\DSP\Lib has disappeared.

Is there a document available that explains how to compile these libraries, and what are the options and defines to set for an STM32H743?

Thank you.

5 replies

KDJEM.1
ST Technical Moderator
July 22, 2026

Hello ​@DADD ;

 

Since CMSIS V 5.8.0, the CMSIS-DSP libraries are supplied as an individual package. The advantage is to decouple the release cycles of DSP from the CMSIS-Core stuff. So no “Lib” folder available.

For that, I recommend you to look at  How to integrate CMSIS-DSP libraries on a STM32 project | Community article and get inspired to integrate the DSP library.

 

Thank you.

Kaouthar

To give better visibility on the answered topics, please click on "Best answer" on the reply which solved your issue or answered your question.
DADDAuthor
Associate II
July 22, 2026

Hello,

Thank you very much for the information. I carried out the procedure and it seems to be working well (so far, it compiles without any errors).

Before posting my message, I spent a lot of time trying to compile the CMSIS/DSP source code to generate the .a files without success.

Thank you again for your help!

Philippe

mƎALLEm
ST Technical Moderator
July 22, 2026

Hello ​@DADD ,

If your question has been answered, please mark as Best Answer ​@KDJEM.1 ‘s post.

Thank you.

To give better visibility on the answered topics, please click "Best answer" on the reply which solved your issue or answered your question.
KDJEM.1
ST Technical Moderator
July 22, 2026

​​​​​​Hello ​@DADD ;

 

Glad to know that the issue is solved.

Please click on "Best answer" on the reply which solved your issue.

 

Thank you.

Kaouthar

To give better visibility on the answered topics, please click on "Best answer" on the reply which solved your issue or answered your question.
DADDAuthor
Associate II
July 22, 2026

In the end, it still doesn't build — I'm getting linker errors.


D:/Dev/Cube_Workspaces/Convolution/CMSIS-DSP/Debug/../Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_chebyshev_distance_f32.c:184: multiple definition of `arm_chebyshev_distance_f32'; ./Drivers/CMSIS_DSP/Source/DistanceFunctions/DistanceFunctions.o:D:/Dev/Cube_Workspaces/Convolution/CMSIS-DSP/Debug/../Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_chebyshev_distance_f32.c:184: first defined here

C:/ST/STM32CubeIDE_2.2.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.14.3.rel1.win32_1.0.100.202602081740/tools/bin/../lib/gcc/arm-none-eabi/14.3.1/../../../../arm-none-eabi/bin/ld.exe: ./Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_chebyshev_distance_f64.o: in function `arm_chebyshev_distance_f64':

D:/Dev/Cube_Workspaces/Convolution/CMSIS-DSP/Debug/../Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_chebyshev_distance_f64.c:50: multiple definition of `arm_chebyshev_distance_f64'; ./Drivers/CMSIS_DSP/Source/DistanceFunctions/DistanceFunctions.o:D:/Dev/Cube_Workspaces/Convolution/CMSIS-DSP/Debug/../Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_chebyshev_distance_f64.c:50: first defined here

C:/ST/STM32CubeIDE_2.2.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.14.3.rel1.win32_1.0.100.202602081740/tools/bin/../lib/gcc/arm-none-eabi/14.3.1/../../../../arm-none-eabi/bin/ld.exe: ./Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_cityblock_distance_f32.o: in function `arm_cityblock_distance_f32':

D:/Dev/Cube_Workspaces/Convolution/CMSIS-DSP/Debug/../Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_cityblock_distance_f32.c:137: multiple definition of `arm_cityblock_distance_f32'; ./Drivers/CMSIS_DSP/Source/DistanceFunctions/DistanceFunctions.o:D:/Dev/Cube_Workspaces/Convolution/CMSIS-DSP/Debug/../Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_cityblock_distance_f32.c:137: first defined here

C:/ST/STM32CubeIDE_2.2.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.14.3.rel1.win32_1.0.100.202602081740/tools/bin/../lib/gcc/arm-none-eabi/14.3.1/../../../../arm-none-eabi/bin/ld.exe: ./Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_cityblock_distance_f64.o: in function `arm_cityblock_distance_f64':

D:/Dev/Cube_Workspaces/Convolution/CMSIS-DSP/Debug/../Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_cityblock_distance_f64.c:49: multiple definition of `arm_cityblock_distance_f64'; ./Drivers/CMSIS_DSP/Source/DistanceFunctions/DistanceFunctions.o:D:/Dev/Cube_Workspaces/Convolution/CMSIS-DSP/Debug/../Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_cityblock_distance_f64.c:49: first defined here

C:/ST/STM32CubeIDE_2.2.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.14.3.rel1.win32_1.0.100.202602081740/tools/bin/../lib/gcc/arm-none-eabi/14.3.1/../../../../arm-none-eabi/bin/ld.exe: ./Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_correlation_distance_f32.o: in function `arm_correlation_distance_f32':

D:/Dev/Cube_Workspaces/Convolution/CMSIS-DSP/Debug/../Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_correlation_distance_f32.c:55: multiple definition of `arm_correlation_distance_f32'; ./Drivers/CMSIS_DSP/Source/DistanceFunctions/DistanceFunctions.o:D:/Dev/Cube_Workspaces/Convolution/CMSIS-DSP/Debug/../Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_correlation_distance_f32.c:55: first defined here

C:/ST/STM32CubeIDE_2.2.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.14.3.rel1.win32_1.0.100.202602081740/tools/bin/../lib/gcc/arm-none-eabi/14.3.1/../../../../arm-none-eabi/bin/ld.exe: ./Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_cosine_distance_f32.o: in function `arm_cosine_distance_f32':

D:/Dev/Cube_Workspaces/Convolution/CMSIS-DSP/Debug/../Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_cosine_distance_f32.c:55: multiple definition of `arm_cosine_distance_f32'; ./Drivers/CMSIS_DSP/Source/DistanceFunctions/DistanceFunctions.o:D:/Dev/Cube_Workspaces/Convolution/CMSIS-DSP/Debug/../Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_cosine_distance_f32.c:55: first defined here

C:/ST/STM32CubeIDE_2.2.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.14.3.rel1.win32_1.0.100.202602081740/tools/bin/../lib/gcc/arm-none-eabi/14.3.1/../../../../arm-none-eabi/bin/ld.exe: ./Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_cosine_distance_f64.o: in function `arm_cosine_distance_f64':

D:/Dev/Cube_Workspaces/Convolution/CMSIS-DSP/Debug/../Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_cosine_distance_f64.c:53: multiple definition of `arm_cosine_distance_f64'; ./Drivers/CMSIS_DSP/Source/DistanceFunctions/DistanceFunctions.o:D:/Dev/Cube_Workspaces/Convolution/CMSIS-DSP/Debug/../Drivers/CMSIS_DSP/Source/DistanceFunctions/arm_cosine_distance_f64.c:53: first defined here

 

KDJEM.1
ST Technical Moderator
July 23, 2026

Hello ​@DADD ,

 

You have an issue with multiple definitions, in this case you need to go through every folder in Drivers/CMSIS_DSP/Source and comment out every #include "file.c" in "folder name.c" and "folder nameF16.c"file.

An example to support SupportFunctions is shared in this FAQ step 8.

KDJEM1_0-1748503759465.png

Please look at this example and apply this solution to all folders in source.

Thank you.

Kaoutha

To give better visibility on the answered topics, please click on "Best answer" on the reply which solved your issue or answered your question.