This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RTOS/SYSBIOS: GNU linker error with SYSBIOS v06.52.00.12

Part Number: SYSBIOS
Other Parts Discussed in Thread: TLK105L, TLK105

Tool/software: TI-RTOS

Hi Team,

We are observing a compilation failure while building PRU-ICSS industrial protocols projects using SYSBIOS 06_52_00_12. The error is as below.

/home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/ReentSupport.c:83: undefined reference to `ti_sysbios_rts_gnu_ReentSupport_checkIfCorrectLibrary'
collect2: error: ld returned 1 exit status

I have attached the CCS build log for the same. How to fix this error? Please let me know if any additional details are needed.

Regards,
Nijin

hdsl_diagnostic_AM437x_arm_build_issue_with_bios_6_52_00_12.txt
**** Build of configuration AM437x_release for project hdsl_diagnostic_AM437x_arm ****

/home/gtbldadm/ti/ccsv7/utils/bin/gmake -k -j 16 all -O 
gmake[1]: Entering directory '/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/projects/hdsl_diagnostic_AM437x_arm/AM437x_release'
Building file: /home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/examples/hdsl_diagnostic/am437x_app.cfg
Invoking: XDCtools
"/home/gtbldadm/ti/xdctools_3_50_03_33_core/xs" --xdcpath="/home/gtbldadm/ti/bios_6_52_00_12/packages;/home/gtbldadm/ti/pdk_am437x_1_0_8/packages;/home/gtbldadm/ti/edma3_lld_2_12_05_30/packages;/home/gtbldadm/ti/ccsv7/ccs_base;" xdc.tools.configuro -o configPkg -t gnu.targets.arm.A9F -p ti.platforms.evmAM437X -r release -c "/home/gtbldadm/ti/gcc-arm-none-eabi-6-2017-q1-update" "/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/examples/hdsl_diagnostic/am437x_app.cfg"
making package.mak (because of package.bld) ...
generating interfaces for package configPkg (because package/package.xdc.inc is older than package.xdc) ...
configuring am437x_app.xa9fg from package/cfg/am437x_app_pa9fg.cfg ...
generating custom ti.sysbios library makefile ... 
Inside EDMA3 Drv Sample getLibs
    will link with ti.sdo.edma3.drv.sample:lib/am437x-evm/arm9/release/edma3_lld_drv_sample.aa9fg
Inside EDMA3 Drv getLibs
    will link with ti.sdo.edma3.drv:lib/arm9/release/edma3_lld_drv.aa9fg
Inside EDMA3 RM getLibs
    will link with ti.sdo.edma3.rm:lib/am437x-evm/arm9/release/edma3_lld_rm.aa9fg
	Linking with library ti.drv.spi:./lib/am437x/a9/release/ti.drv.spi.aa9fg
	Linking with library ti.board:./lib/idkAM437x/a9/release/ti.board.aa9fg
	Linking with library ti.csl:./lib/am437x/a9/release/ti.csl.aa9fg
	Linking with library ti.drv.i2c:./lib/a9/release/ti.drv.i2c.aa9fg
	Linking with library ti.drv.gpio:./lib/a9/release/ti.drv.gpio.aa9fg
	Linking with library ti.drv.pruss:./lib/a9/release/ti.drv.pruss.aa9fg
	Linking with library ti.drv.uart:./lib/a9/release/ti.drv.uart.aa9fg
	Linking with library ti.osal:./lib/tirtos/a9/release/ti.osal.aa9fg
Starting build of library sources ...
making /home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/examples/hdsl_diagnostic/src/sysbios/sysbios.aa9fg ...
gmake[1]: Entering directory `/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/examples/hdsl_diagnostic/src/sysbios'
asma9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/family/arm/IntrinsicsSupport_asm_gnu.asm ...
asma9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/family/arm/TaskSupport_asm_gnu.asm ...
asma9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/family/arm/gic/Hwi_asm_gnu.asm ...
asma9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/family/arm/exc/Exception_asm_gnu.asm ...
asma9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/family/arm/a9/Cache_asm_gnu.sv7A ...
asma9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/family/arm/a8/Mmu_asm_gnu.sv7A ...
asma9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/timers/dmtimer/Timer_asm_gnu.sv7A ...
asma9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/family/arm/a15/TimestampProvider_asm_gnu.asm ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/BIOS.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/family/arm/IntrinsicsSupport.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/family/arm/TaskSupport.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/knl/Clock.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/knl/Idle.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/knl/Intrinsics.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/knl/Queue.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/knl/Semaphore.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/knl/Swi.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/knl/Task.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/hal/Cache.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/hal/Core.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/hal/CoreNull.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/hal/Hwi.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/hal/Hwi_stack.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/hal/Hwi_startup.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/hal/Timer.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/family/arm/gic/Hwi.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/family/arm/exc/Exception.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/family/arm/a9/Cache.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/family/arm/a9/Timer.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/heaps/HeapMem.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/family/arm/a8/Mmu.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/ReentSupport.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/SemiHostSupport.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/gates/GateHwi.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/gates/GateMutex.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/timers/dmtimer/Timer.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/family/arm/a9/am437x/TimerSupport.c ...
cla9fg /home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/family/arm/a15/TimestampProvider.c ...
ara9fg arm_IntrinsicsSupport_asm_gnu.o arm_TaskSupport_asm_gnu.o gic_Hwi_asm_gnu.o exc_Exception_asm_gnu.o a9_Cache_asm_gnu.o a8_Mmu_asm_gnu.o dmtimer_Timer_asm_gnu.o a15_TimestampProvider_asm_gnu.o _BIOS.o arm_IntrinsicsSupport.o arm_TaskSupport.o knl_Clock.o knl_Idle.o knl_Intrinsics.o knl_Queue.o knl_Semaphore.o knl_Swi.o knl_Task.o hal_Cache.o hal_Core.o hal_CoreNull.o hal_Hwi.o hal_Hwi_stack.o hal_Hwi_startup.o hal_Timer.o gic_Hwi.o exc_Exception.o a9_Cache.o a9_Timer.o heaps_HeapMem.o a8_Mmu.o gnu_ReentSupport.o gnu_SemiHostSupport.o gates_GateHwi.o gates_GateMutex.o dmtimer_Timer.o am437x_TimerSupport.o a15_TimestampProvider.o ...
gmake[1]: Leaving directory `/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/examples/hdsl_diagnostic/src/sysbios'
Build of libraries done.
cla9fg package/cfg/am437x_app_pa9fg.c ...
Finished building: /home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/examples/hdsl_diagnostic/am437x_app.cfg
 
gmake[1]: Leaving directory '/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/projects/hdsl_diagnostic_AM437x_arm/AM437x_release'
Building file: /home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/drv/pruss/soc/am437x/pruicss_soc.c
Invoking: GNU Compiler
"/home/gtbldadm/ti/gcc-arm-none-eabi-6-2017-q1-update/bin/arm-none-eabi-gcc" -c -mcpu=cortex-a9 -mtune=cortex-a9 -march=armv7-a -marm -mfloat-abi=hard -Dam4379 -DSOC_AM437x -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/projects/hdsl_diagnostic_AM437x_arm" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/am43xx" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/am43xx/am437x" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/utils" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/include" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/include" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/firmware" -I"/home/gtbldadm/ti/gcc-arm-none-eabi-6-2017-q1-update/arm-none-eabi/include" -O2 -ffunction-sections -fdata-sections -g -gdwarf-2 -gstrict-dwarf -Wall -MMD -MP -MF"pruicss_soc.d" -MT"pruicss_soc.o" -o"pruicss_soc.o" @"configPkg/compiler.opt" "/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/drv/pruss/soc/am437x/pruicss_soc.c"
Finished building: /home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/drv/pruss/soc/am437x/pruicss_soc.c
 
Building file: /home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/drv/gpio/soc/am437x/GPIO_soc.c
Invoking: GNU Compiler
"/home/gtbldadm/ti/gcc-arm-none-eabi-6-2017-q1-update/bin/arm-none-eabi-gcc" -c -mcpu=cortex-a9 -mtune=cortex-a9 -march=armv7-a -marm -mfloat-abi=hard -Dam4379 -DSOC_AM437x -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/projects/hdsl_diagnostic_AM437x_arm" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/am43xx" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/am43xx/am437x" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/utils" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/include" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/include" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/firmware" -I"/home/gtbldadm/ti/gcc-arm-none-eabi-6-2017-q1-update/arm-none-eabi/include" -O2 -ffunction-sections -fdata-sections -g -gdwarf-2 -gstrict-dwarf -Wall -MMD -MP -MF"GPIO_soc.d" -MT"GPIO_soc.o" -o"GPIO_soc.o" @"configPkg/compiler.opt" "/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/drv/gpio/soc/am437x/GPIO_soc.c"
Finished building: /home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/drv/gpio/soc/am437x/GPIO_soc.c
 
Building file: /home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/drv/i2c/soc/am437x/I2C_soc.c
Invoking: GNU Compiler
"/home/gtbldadm/ti/gcc-arm-none-eabi-6-2017-q1-update/bin/arm-none-eabi-gcc" -c -mcpu=cortex-a9 -mtune=cortex-a9 -march=armv7-a -marm -mfloat-abi=hard -Dam4379 -DSOC_AM437x -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/projects/hdsl_diagnostic_AM437x_arm" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/am43xx" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/am43xx/am437x" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/utils" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/include" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/include" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/firmware" -I"/home/gtbldadm/ti/gcc-arm-none-eabi-6-2017-q1-update/arm-none-eabi/include" -O2 -ffunction-sections -fdata-sections -g -gdwarf-2 -gstrict-dwarf -Wall -MMD -MP -MF"I2C_soc.d" -MT"I2C_soc.o" -o"I2C_soc.o" @"configPkg/compiler.opt" "/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/drv/i2c/soc/am437x/I2C_soc.c"
Finished building: /home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/drv/i2c/soc/am437x/I2C_soc.c
 
Building file: /home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/drv/uart/soc/am437x/UART_soc.c
Invoking: GNU Compiler
"/home/gtbldadm/ti/gcc-arm-none-eabi-6-2017-q1-update/bin/arm-none-eabi-gcc" -c -mcpu=cortex-a9 -mtune=cortex-a9 -march=armv7-a -marm -mfloat-abi=hard -Dam4379 -DSOC_AM437x -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/projects/hdsl_diagnostic_AM437x_arm" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/am43xx" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/am43xx/am437x" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/utils" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/include" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/include" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/firmware" -I"/home/gtbldadm/ti/gcc-arm-none-eabi-6-2017-q1-update/arm-none-eabi/include" -O2 -ffunction-sections -fdata-sections -g -gdwarf-2 -gstrict-dwarf -Wall -MMD -MP -MF"UART_soc.d" -MT"UART_soc.o" -o"UART_soc.o" @"configPkg/compiler.opt" "/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/drv/uart/soc/am437x/UART_soc.c"
Finished building: /home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/drv/uart/soc/am437x/UART_soc.c
 
Building file: /home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/examples/board/common/delay_us.c
Invoking: GNU Compiler
"/home/gtbldadm/ti/gcc-arm-none-eabi-6-2017-q1-update/bin/arm-none-eabi-gcc" -c -mcpu=cortex-a9 -mtune=cortex-a9 -march=armv7-a -marm -mfloat-abi=hard -Dam4379 -DSOC_AM437x -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/projects/hdsl_diagnostic_AM437x_arm" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/am43xx" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/am43xx/am437x" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/utils" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/include" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/include" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/firmware" -I"/home/gtbldadm/ti/gcc-arm-none-eabi-6-2017-q1-update/arm-none-eabi/include" -O2 -ffunction-sections -fdata-sections -g -gdwarf-2 -gstrict-dwarf -Wall -MMD -MP -MF"delay_us.d" -MT"delay_us.o" -o"delay_us.o" @"configPkg/compiler.opt" "/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/examples/board/common/delay_us.c"
Finished building: /home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/examples/board/common/delay_us.c
 
Building file: /home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/examples/hdsl_diagnostic/hdsl_app.c
Invoking: GNU Compiler
"/home/gtbldadm/ti/gcc-arm-none-eabi-6-2017-q1-update/bin/arm-none-eabi-gcc" -c -mcpu=cortex-a9 -mtune=cortex-a9 -march=armv7-a -marm -mfloat-abi=hard -Dam4379 -DSOC_AM437x -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/projects/hdsl_diagnostic_AM437x_arm" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/am43xx" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/am43xx/am437x" -I"/home/gtbldadm/ti/pdk_am437x_1_0_8/packages/ti/starterware/include/utils" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/include" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/include" -I"/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/interfaces/hdsl_master/firmware" -I"/home/gtbldadm/ti/gcc-arm-none-eabi-6-2017-q1-update/arm-none-eabi/include" -O2 -ffunction-sections -fdata-sections -g -gdwarf-2 -gstrict-dwarf -Wall -MMD -MP -MF"hdsl_app.d" -MT"hdsl_app.o" -o"hdsl_app.o" @"configPkg/compiler.opt" "/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/examples/hdsl_diagnostic/hdsl_app.c"
Finished building: /home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/examples/hdsl_diagnostic/hdsl_app.c
 
Building target: hdsl_diagnostic_AM437x_arm.out
Invoking: GNU Linker
"/home/gtbldadm/ti/gcc-arm-none-eabi-6-2017-q1-update/bin/arm-none-eabi-gcc" -mtune=cortex-a9 -marm -Dam4379 -DSOC_AM437x -O2 -ffunction-sections -fdata-sections -g -gdwarf-2 -gstrict-dwarf -Wall -mfloat-abi=hard -Wl,-Map,"hdsl_diagnostic_AM437x_arm.map" -nostartfiles -nodefaultlibs -static -Wl,--gc-sections -L"/home/gtbldadm/ti/bios_6_52_00_12/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/fpu" -L"/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/fpu" -Wl,--defsym,STACKSIZE=0x18000 -Wl,--defsym,HEAPSIZE=0x400 -Wl,--start-group -o"hdsl_diagnostic_AM437x_arm.out" "./GPIO_soc.o" "./I2C_soc.o" "./UART_soc.o" "./delay_us.o" "./hdsl_app.o" "./pruicss_soc.o" -Wl,-T"configPkg/linker.cmd" -Wl,--start-group -lrdimon -lgcc -lm -lc -Wl,--end-group 
makefile:148: recipe for target 'hdsl_diagnostic_AM437x_arm.out' failed
/home/gtbldadm/ti/PRU-ICSS-Industrial_Drives_01.00.01.00/examples/hdsl_diagnostic/src/sysbios/sysbios.aa9fg(gnu_ReentSupport.o): In function `ti_sysbios_rts_gnu_ReentSupport_Module_startup__E':
/home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/ReentSupport.c:83: undefined reference to `ti_sysbios_rts_gnu_ReentSupport_checkIfCorrectLibrary'
collect2: error: ld returned 1 exit status
gmake[1]: *** [hdsl_diagnostic_AM437x_arm.out] Error 1
gmake: *** [all] Error 2
makefile:144: recipe for target 'all' failed

**** Build Finished ****

  • I've forwarded your query to the software experts. Their feedback should be posted here.

    BR
    Tsvetolin Shulev
  • Nijin,

    We have added this to the Processor SDK RTOS FAQ document as this has been reported before. Can you please check the link below and let us know if you are still running into this issue:
    processors.wiki.ti.com/.../Processor_SDK_RTOS_FAQ

    Regards,
    Rahul
  • Hi Rahul,

    Thank you for your response. We have observed that SYSBIOS Library paths has changed in bios_6_52_00_12. So we have corrected --library-path from "${BIOS_CG_ROOT}/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/fpu" to "${BIOS_CG_ROOT}/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/hard"

    Our project settings for linker options looks as below

    Previous error is gone now, but we are observing different error related to 'stdin', 'stdout' and 'stderr'.

    **** Build of configuration AM572x_release for project ethercat_slave_demo_AM572x_arm ****

    "C:\\ti\\ccs_v7_1_0_16\\ccsv7\\utils\\bin\\gmake" -k -j 4 all -O
    'Building target: ethercat_slave_demo_AM572x_arm.out'
    'Invoking: GNU Linker'
    "C:/ti/PSDK/AM57xx/04_02_00_03_Nightly_10112017/gcc-arm-none-eabi-6-2017-q1-update/bin/arm-none-eabi-gcc.exe" -mtune=cortex-a15 -marm -Dam5728 -Dcore0 -DSOC_AM572x -DNO_UART_MSG_APP -DECAT_LIMITED_DEMO -O2 -ffunction-sections -fdata-sections -g -gdwarf-2 -gstrict-dwarf -Wall -mfloat-abi=hard -Wl,-Map,"ethercat_slave_demo_AM572x_arm.map" -nostartfiles -nodefaultlibs -static -Wl,--gc-sections -L"D:/x0203287/Source/repo_2/public/sdk/third_party/protocols/ethercat_slave/stack_lib/am57xx/a15" -L"C:/ti/PSDK/AM57xx/04_02_00_03_Nightly_10112017/bios_6_52_00_12/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/hard" -Wl,--defsym,CORE0=1 -Wl,--defsym,STACKSIZE=0x10000 -Wl,--defsym,HEAPSIZE=0x400 -Wl,--start-group -o"ethercat_slave_demo_AM572x_arm.out" "./GPIO_soc.o" "./I2C_soc.o" "./SPI_soc.o" "./UART_soc.o" "./board_gpioLed.o" "./board_i2cLed.o" "./board_misc.o" "./board_phy.o" "./board_spi.o" "./board_tlk105.o" "./board_tlkphy.o" "./delay_us.o" "./pruicss_soc.o" "./tiesc_fw_cir_buff.o" "./tiesc_soc.o" "./tiescappl.o" "./tiescbsp.o" "./tieschw.o" "./tiescphy_tlk105l.o" "./tiescutils.o" -Wl,-T"configPkg/linker.cmd" -Wl,--start-group -lethercat_slave_stack_AM57xx_arm -lrdimon -lgcc -lc -Wl,--end-group
    makefile:164: recipe for target 'ethercat_slave_demo_AM572x_arm.out' failed
    D:\x0203287\Source\repo_2\public\sdk\protocols\ethercat_slave\ecat_appl\src\sysbios\sysbios.aa15fg(gnu_ReentSupport.o): In function `ti_sysbios_rts_gnu_ReentSupport_getReent(int0_t)':
    C:/ti/PSDK/AM57xx/04_02_00_03_Nightly_10112017/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/ReentSupport.c:173: undefined reference to `__sf_fake_stdin'
    C:/ti/PSDK/AM57xx/04_02_00_03_Nightly_10112017/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/ReentSupport.c:173: undefined reference to `__sf_fake_stdout'
    C:/ti/PSDK/AM57xx/04_02_00_03_Nightly_10112017/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/ReentSupport.c:173: undefined reference to `__sf_fake_stderr'
    C:/ti/PSDK/AM57xx/04_02_00_03_Nightly_10112017/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/ReentSupport.c:173: undefined reference to `__sf_fake_stdin'
    C:/ti/PSDK/AM57xx/04_02_00_03_Nightly_10112017/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/ReentSupport.c:173: undefined reference to `__sf_fake_stdout'
    C:/ti/PSDK/AM57xx/04_02_00_03_Nightly_10112017/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/ReentSupport.c:173: undefined reference to `__sf_fake_stderr'
    collect2.exe: error: ld returned 1 exit status
    gmake[1]: *** [ethercat_slave_demo_AM572x_arm.out] Error 1
    makefile:160: recipe for target 'all' failed
    gmake: *** [all] Error 2

    **** Build Finished ****

    Can you please let us know what linker settings to be corrected further to fix this problem?

    Regards,
    Nijin

    PS: The above mentioned Processor SDK FAQ page is not accessible now. It gives me 'internal error' due to technical issue. Not sure if it's a temporary issue.

  • The link should be available now. It may have been down for some time last week. I have also looped in the SYSBIOS team that had made us aware of this issue.

    Regards,
    Rahul
  • Hi Nijin,

    There are some migration steps you need to follow when moving a project built with an older SYS/BIOS release to SYS/BIOS v6.51 or newer. The release notes have a pointer to the migration steps. I have pasted the direct link below:

    http://processors.wiki.ti.com/index.php/SYS/BIOS_with_GCC_(CortexA)#Migrating_existing_GCC_projects_to_SYS.2FBIOS_v6.51_or_newer

    Let us know if you run into any other build issues.

    Best,

    Ashish

  • Hi Ashish and Rahul,

    Thank you so much for the suggestions and help. We could resolve the build issues now.

    I am noting down the changes we did in project settings to fix the issue for future reference:

    1. Change in SYSBIOS library path (--library-path): [Project Settings->GNU Linker->Libraries]

    Use "${BIOS_CG_ROOT}/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/hard" instead of "${BIOS_CG_ROOT}/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/fpu"

    2. Adding Miscellaneous Flag in linker settings: [Project Settings->GNU Linker->Miscellaneous]

    Add "--specs=nano.specs" to select 'newlib-nano' as the C runtime library. This can be done via command line project create argument, eg: -ccs.setLinkerOptions "--specs=nano.specs" @configurations config_name

    Regards,
    Nijin