Undefined Reference to SEGGER_RTT_ During Build After Upgrading to 3.2.9.2*

Hi everyone,

I'm currently migrating a firmware project from version 3.2.8.1 to 3.2.9.2, and I’m encountering a linker error during the build process.

Environment:

  • GNU Arm Embedded Toolchain 10.3.1 (2021.10)

  • My project directory: D:\Itsokey\...

  • Toolchain path: C:\Program Files (x86)\GNU Arm Embedded Toolchain\...

  • The static library liblmac.mod.a was provided by the vendor — I didn’t compile it myself.

Error message:

Building target: da16600_aws.elf
c:/program files (x86)/gnu arm embedded toolchain/10 2021.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld.exe: D:/Itsokey/itsokey-wifi-firmware/apps/AWS/get_started_da16600/projects/da16600/../../../../../library\liblmac.mod.a(dbg_print.o): in function `dbg_rtt_vprintf':
C:/Users/Thinkpalm/Desktop/mar04/da16200_freertos/core/wifistack/lmac/macsw/modules/dbg/src/dbg_print.c:77: undefined reference to `SEGGER_RTT_SetTerminal'
c:/program files (x86)/gnu arm embedded toolchain/10 2021.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld.exe: C:/Users/Thinkpalm/Desktop/mar04/da16200_freertos/core/wifistack/lmac/macsw/modules/dbg/src/dbg_print.c:78: undefined reference to `SEGGER_RTT_printf'
c:/program files (x86)/gnu arm embedded toolchain/10 2021.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld.exe: C:/Users/Thinkpalm/Desktop/mar04/da16200_freertos/core/wifistack/lmac/macsw/modules/dbg/src/dbg_print.c:79: undefined reference to `SEGGER_RTT_SetTerminal'
collect2.exe: error: ld returned 1 exit status
make[1]: *** [makefile:257: da16600_aws.elf] Error 1
make: *** [makefile:249: all] Error 2
"make -r all" terminated with exit code 2. Build might be incomplete.

It looks like the vendor’s library is referencing SEGGER RTT functions, but they aren’t available in my build.

Why is this error happening, and how should I resolve it?

Thanks in advance for any insights!