STMicroelectronics/stm32ai-perf

linker error

mkatanbaf opened this issue · 1 comments

I tried to compile the person detection project for the stm32L4R5ZI board, but got the following linker errors:

arm-none-eabi-gcc -o "VWW01.elf" @"objects.list"  -l:NetworkRuntime710_CM4_GCC.a -mcpu=cortex-m4 -T"/home/mohamadk/src/stm/STM32CubeIDE/workspace_1.10.1/VWW01/STM32L4R5ZITX_FLASH.ld" --specs=nosys.specs -Wl,-Map="VWW01.map" -Wl,--gc-sections -static -L../Middlewares/ST/AI/Lib --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -u _printf_float -Wl,--start-group -lc -lm -Wl,--end-group
/opt/st/stm32cubeide_1.10.1_2/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.0.202111181127/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./tinyml_api/st_port.o:(.bss.htim5+0x0): multiple definition of `htim5'; ./Core/Src/main.o:(.bss.htim5+0x0): first defined here
/opt/st/stm32cubeide_1.10.1_2/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.0.202111181127/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./tinyml_api/st_port.o:(.bss.huart3+0x0): multiple definition of `huart3'; ./Core/Src/main.o:(.bss.huart3+0x0): first defined here
/opt/st/stm32cubeide_1.10.1_2/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.0.202111181127/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./tinyml_api/st_port.o:(.bss.hlpuart1+0x0): multiple definition of `hlpuart1'; ./Core/Src/main.o:(.bss.hlpuart1+0x0): first defined here
/opt/st/stm32cubeide_1.10.1_2/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.0.202111181127/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./tinyml_api/submitter_implemented.o:(.bss.aiInData_int+0x0): multiple definition of `aiInData_int'; ./tinyml_api/st_port.o:(.bss.aiInData_int+0x0): first defined here
/opt/st/stm32cubeide_1.10.1_2/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.0.202111181127/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./tinyml_api/submitter_implemented.o:(.bss.ai_output+0x0): multiple definition of `ai_output'; ./tinyml_api/st_port.o:(.bss.ai_output+0x0): first defined here
/opt/st/stm32cubeide_1.10.1_2/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.0.202111181127/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./tinyml_api/submitter_implemented.o:(.bss.ai_input+0x0): multiple definition of `ai_input'; ./tinyml_api/st_port.o:(.bss.ai_input+0x0): first defined here
/opt/st/stm32cubeide_1.10.1_2/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.0.202111181127/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./tinyml_api/submitter_implemented.o:(.bss.network+0x0): multiple definition of `network'; ./tinyml_api/st_port.o:(.bss.network+0x0): first defined here
/opt/st/stm32cubeide_1.10.1_2/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.0.202111181127/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./tinyml_api/submitter_implemented.o:(.bss.pool0+0x0): multiple definition of `pool0'; ./tinyml_api/st_port.o:(.bss.pool0+0x0): first defined here
/opt/st/stm32cubeide_1.10.1_2/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.0.202111181127/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./tinyml_api/submitter_implemented.o:(.bss.aiOutData+0x0): multiple definition of `aiOutData'; ./tinyml_api/st_port.o:(.bss.aiOutData+0x0): first defined here
/opt/st/stm32cubeide_1.10.1_2/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.0.202111181127/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./tinyml_api/submitter_implemented.o:(.bss.htim5+0x0): multiple definition of `htim5'; ./Core/Src/main.o:(.bss.htim5+0x0): first defined here
/opt/st/stm32cubeide_1.10.1_2/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.0.202111181127/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./tinyml_api/submitter_implemented.o:(.bss.huart3+0x0): multiple definition of `huart3'; ./Core/Src/main.o:(.bss.huart3+0x0): first defined here
/opt/st/stm32cubeide_1.10.1_2/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.0.202111181127/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./tinyml_api/submitter_implemented.o:(.bss.hlpuart1+0x0): multiple definition of `hlpuart1'; ./Core/Src/main.o:(.bss.hlpuart1+0x0): first defined here
collect2: error: ld returned 1 exit status

@mkatanbaf,
This issue has been fixed in the latest published repo.