AnsweredAssumed Answered

Link problem with rdimon.specs

Question asked by Daniel Sexton on Oct 3, 2015
Latest reply on Jan 26, 2016 by William Garrido

Hi,

I have just started with KDS, wanted to move to an environment with a  debugger.

I imported a program from MBED and followed the instructions in the tutorial videos to get ready for using the debugger with semihosting.

I found that my program linked & built if I had the other linker flags set to  -specs=nosys.specs, but when I have them set to -specs=rdimon.specs it will not generate an .elf. There are messages like:

 

 

"..\\mbed\\TARGET_K64F\\TOOLCHAIN_GCC_ARM\\system_MK64F12.o" "..\\mbed\\TARGET_K64F\\TOOLCHAIN_GCC_ARM\\startup_MK64F12.o" "..\\mbed\\TARGET_K64F\\TOOLCHAIN_GCC_ARM\\board.o" "..\\mbed\\TARGET_K64F\\TOOLCHAIN_GCC_ARM\\cmsis_nvic.o" "..\\mbed\\TARGET_K64F\\TOOLCHAIN_GCC_ARM\\retarget.o" -lmbed

 

c:/freescale/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/lib/armv7e-m/softfp\librdimon_s.a(rdimon-syscalls.o): In function `_read':

 

syscalls.c:(.text._read+0x0): multiple definition of `_read'

 

..\mbed\TARGET_K64F\TOOLCHAIN_GCC_ARM\retarget.o:retarget.cpp:(.text._read+0x0): first defined here

 

c:/freescale/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/lib/armv7e-m/softfp\librdimon_s.a(rdimon-syscalls.o): In function `_lseek':

 

syscalls.c:(.text._lseek+0x0): multiple definition of `_lseek'

 

..\mbed\TARGET_K64F\TOOLCHAIN_GCC_ARM\retarget.o:retarget.cpp:(.text._lseek+0x0): first defined here

 

c:/freescale/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/lib/armv7e-m/softfp\librdimon_s.a(rdimon-syscalls.o): In function `_write':

 

syscalls.c:(.text._write+0x0): multiple definition of `_write'

 

..\mbed\TARGET_K64F\TOOLCHAIN_GCC_ARM\retarget.o:retarget.cpp:(.text._write+0x0): first defined here

 

c:/freescale/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/lib/armv7e-m/softfp\librdimon_s.a(rdimon-syscalls.o): In function `_close':

 

syscalls.c:(.text._close+0x0): multiple definition of `_close'

 

..\mbed\TARGET_K64F\TOOLCHAIN_GCC_ARM\retarget.o:retarget.cpp:(.text._close+0x0): first defined here

 

c:/freescale/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/lib/armv7e-m/softfp\librdimon_s.a(rdimon-syscalls.o): In function `_sbrk':

 

syscalls.c:(.text._sbrk+0x0): multiple definition of `_sbrk'

 

..\mbed\TARGET_K64F\TOOLCHAIN_GCC_ARM\retarget.o:retarget.cpp:(.text._sbrk+0x0): first defined here

 

c:/freescale/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/lib/armv7e-m/softfp\librdimon_s.a(rdimon-syscalls.o): In function `_open':

 

syscalls.c:(.text._open+0x0): multiple definition of `_open'

 

..\mbed\TARGET_K64F\TOOLCHAIN_GCC_ARM\retarget.o:retarget.cpp:(.text._open+0x0): first defined here

 

c:/freescale/kds_3.0.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/lib/armv7e-m/softfp\librdimon_s.a(rdimon-syscalls.o): In function `_isatty':

 

syscalls.c:(.text._isatty+0x0): multiple definition of `_isatty'

 

..\mbed\TARGET_K64F\TOOLCHAIN_GCC_ARM\retarget.o:retarget.cpp:(.text._isatty+0x0): first defined here

 

collect2.exe: error: ld returned 1 exit status

 

I have not tried to run the debugger yet but feel because of the way my program operates I will need the semihosting mode.

Any thoughts.

Outcomes