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.
Tool/software: TI-RTOS
Hi,
I'm using hello_MSP_EXP432E401Y_tirtos_ccs as a base project and am having
trouble enabling the NDK and setting up an HTTP server. The compiler output
is pasted below. I get the timer_create, timer_settime, timer_delete, and
clock_gettime are unresolved, but I don't know where those symbols should
be defined.
**** Build of configuration Debug for project hello_MSP_EXP432E401Y_tirtos_gcc ****
"C:\\ti\\ccsv8\\utils\\bin\\gmake" -k -j 8 all -O
1 file(s) copied.
making ../src/sysbios/sysbios.am4fg ...
Building file: "../hello.cfg"
Invoking: XDCtools
"C:/ti/xdctools_3_50_08_24_core/xs" --xdcpath="C:/ti/simplelink_msp432e4_sdk_2_20_00_20/source;C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages;C:/ti/tirtos_msp43x_2_20_00_06/packages;C:/ti/tirtos_msp43x_2_20_00_06/products/bios_6_46_00_23/packages;C:/ti/tirtos_msp43x_2_20_00_06/products/tidrivers_msp43x_2_20_00_08/packages;C:/ti/tirtos_msp43x_2_20_00_06/products/uia_2_00_06_52/packages;" xdc.tools.configuro -o configPkg -t gnu.targets.arm.M4F -p ti.platforms.msp432:MSP432E401Y -r release -c "C:/ti/ccsv8/tools/compiler/gcc-arm-none-eabi-7-2017-q4-major-win32" --compileOptions "-mcpu=cortex-m4 -march=armv7e-m -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -I\"C:/Users/chase/production_workspace/hello_MSP_EXP432E401Y_tirtos_gcc\" -I\"C:/ti/simplelink_msp432e4_sdk_2_20_00_20/source/third_party/CMSIS/Include\" -I\"C:/ti/simplelink_msp432e4_sdk_2_20_00_20/source/ti/posix/gcc\" -I\"C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/include/newlib-nano\" -I\"C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/include\" -I\"C:/ti/ccsv8/tools/compiler/gcc-arm-none-eabi-7-2017-q4-major-win32/arm-none-eabi/include\" -Og -ffunction-sections -fdata-sections -g -gdwarf-3 -gstrict-dwarf -Wall -std=c99 " "../hello.cfg"
gmake[1]: Nothing to be done for 'all'.
configuring hello.xm4fg from package/cfg/hello_pm4fg.cfg ...
generating custom ti.sysbios library makefile ...
Starting build of library sources ...
making C:/Users/chase/production_workspace/hello_MSP_EXP432E401Y_tirtos_gcc/src/sysbios/sysbios.am4fg ...
gmake[1]: Entering directory `C:/Users/chase/production_workspace/hello_MSP_EXP432E401Y_tirtos_gcc/src/sysbios'
asmm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/family/arm/m3/Hwi_asm_gnu.sv7M ...
asmm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/family/arm/m3/Hwi_asm_switch_gnu.sv7M ...
asmm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/family/arm/m3/IntrinsicsSupport_asm_gnu.sv7M ...
asmm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/family/arm/m3/TaskSupport_asm_gnu.sv7M ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/BIOS.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/knl/Clock.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/knl/Idle.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/knl/Intrinsics.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/knl/Event.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/knl/Queue.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/knl/Semaphore.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/knl/Swi.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/knl/Task.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/family/arm/msp432e4/init/Boot.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/family/arm/msp432e4/init/Boot_sysctl.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/hal/Cache.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/hal/CacheNull.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/hal/Hwi.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/hal/Hwi_stack.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/hal/Hwi_startup.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/family/arm/m3/Hwi.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/family/arm/m3/TaskSupport.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/heaps/HeapMem.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/gates/GateHwi.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/gates/GateMutex.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/rts/gnu/ReentSupport.c ...
clm4fg C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/ti/sysbios/family/arm/lm4/Timer.c ...
arm4fg m3_Hwi_asm_gnu.o m3_Hwi_asm_switch_gnu.o m3_IntrinsicsSupport_asm_gnu.o m3_TaskSupport_asm_gnu.o _BIOS.o knl_Clock.o knl_Idle.o knl_Intrinsics.o knl_Event.o knl_Queue.o knl_Semaphore.o knl_Swi.o knl_Task.o init_Boot.o init_Boot_sysctl.o hal_Cache.o hal_CacheNull.o hal_Hwi.o hal_Hwi_stack.o hal_Hwi_startup.o m3_Hwi.o m3_TaskSupport.o heaps_HeapMem.o gates_GateHwi.o gates_GateMutex.o gnu_ReentSupport.o lm4_Timer.o ...
gmake[1]: Leaving directory `C:/Users/chase/production_workspace/hello_MSP_EXP432E401Y_tirtos_gcc/src/sysbios'
Build of libraries done.
clm4fg package/cfg/hello_pm4fg.c ...
In file included from C:/ti/simplelink_msp432e4_sdk_2_20_00_20/source/ti/ndk/inc/socket.h:43:0,
from C:/ti/simplelink_msp432e4_sdk_2_20_00_20/source/ti/ndk/inc/stacksys.h:86,
from C:/ti/simplelink_msp432e4_sdk_2_20_00_20/source/ti/ndk/inc/netmain.h:39,
from package/cfg/hello_pm4fg.c:2156:
C:/ti/simplelink_msp432e4_sdk_2_20_00_20/source/ti/ndk/inc/socketndk.h:303:56: warning: 'struct timeval' declared inside parameter list will not be visible outside of this definition or declaration
NDK_fd_set *exceptfds, struct timeval *timeout );
^~~~~~~
Finished building: "../hello.cfg"
Building file: "../hello.c"
Invoking: GNU Compiler
"C:/ti/ccsv8/tools/compiler/gcc-arm-none-eabi-7-2017-q4-major-win32/bin/arm-none-eabi-gcc.exe" -c -mcpu=cortex-m4 -march=armv7e-m -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -I"C:/Users/chase/production_workspace/hello_MSP_EXP432E401Y_tirtos_gcc" -I"C:/ti/simplelink_msp432e4_sdk_2_20_00_20/source/third_party/CMSIS/Include" -I"C:/ti/simplelink_msp432e4_sdk_2_20_00_20/source/ti/posix/gcc" -I"C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/include/newlib-nano" -I"C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/include" -I"C:/ti/ccsv8/tools/compiler/gcc-arm-none-eabi-7-2017-q4-major-win32/arm-none-eabi/include" -Og -ffunction-sections -fdata-sections -g -gdwarf-3 -gstrict-dwarf -Wall -MMD -MP -MF"hello.d" -MT"hello.o" -std=c99 @"configPkg/compiler.opt" -o"hello.o" "../hello.c"
Finished building: "../hello.c"
making ../src/sysbios/sysbios.am4fg ...
gmake[2]: Nothing to be done for 'all'.
Building target: "hello_MSP_EXP432E401Y_tirtos_gcc.out"
Invoking: GNU Linker
"C:/ti/ccsv8/tools/compiler/gcc-arm-none-eabi-7-2017-q4-major-win32/bin/arm-none-eabi-gcc.exe" -Og -ffunction-sections -fdata-sections -g -gdwarf-3 -gstrict-dwarf -Wall -march=armv7e-m -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -Wl,-Map,"hello_MSP_EXP432E401Y_tirtos_gcc.map" -nostartfiles -static -Wl,--gc-sections -L"C:/ti/simplelink_msp432e4_sdk_2_20_00_20/source" -L"C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages" -L"C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/thumb/v7e-m/fpv4-sp/hard" -L"C:/ti/ccsv8/tools/compiler/gcc-arm-none-eabi-7-2017-q4-major-win32/arm-none-eabi/lib" -march=armv7e-m -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 --specs=nano.specs -o"hello_MSP_EXP432E401Y_tirtos_gcc.out" "./MSP_EXP432E401Y.o" "./hello.o" -Wl,-T"../MSP_EXP432E401Y_TIRTOS.lds" -Wl,-T"configPkg/linker.cmd" -l:"ti/display/lib/display.am4fg" -l:"ti/grlib/lib/gcc/m4f/grlib.a" -l:"third_party/spiffs/lib/gcc/m4f/spiffs.a" -l:"ti/drivers/lib/drivers_msp432e4.am4fg" -l:"third_party/fatfs/lib/gcc/m4f/fatfs.a" -l:"ti/dpl/lib/dpl_msp432e4.am4fg" -l:"ti/devices/msp432e4/driverlib/lib/gcc/m4f/msp432e4_driverlib.a" -lgcc -lc -lm -lnosys
makefile:152: recipe for target 'hello_MSP_EXP432E401Y_tirtos_gcc.out' failed
C:\Users\chase\production_workspace\hello_MSP_EXP432E401Y_tirtos_gcc\Debug\configPkg\package\cfg\hello_pm4fg.om4fg:C:\Users\chase\production_workspace\hello_MSP_EXP432E401Y_tirtos_gcc\Debug\configPkg/package/cfg/hello_pm4fg.c:2317: multiple definition of `ti_ndk_config_Global_HostName'
./hello.o:C:\Users\chase\production_workspace\hello_MSP_EXP432E401Y_tirtos_gcc\Debug/../hello.c:48: first defined here
C:\Users\chase\production_workspace\hello_MSP_EXP432E401Y_tirtos_gcc\Debug\configPkg\package\cfg\hello_pm4fg.om4fg: In function `ti_ndk_config_Global_stackThread':
C:\Users\chase\production_workspace\hello_MSP_EXP432E401Y_tirtos_gcc\Debug\configPkg/package/cfg/hello_pm4fg.c:2343: undefined reference to `timer_create'
C:\Users\chase\production_workspace\hello_MSP_EXP432E401Y_tirtos_gcc\Debug\configPkg/package/cfg/hello_pm4fg.c:2356: undefined reference to `timer_settime'
C:\Users\chase\production_workspace\hello_MSP_EXP432E401Y_tirtos_gcc\Debug\configPkg/package/cfg/hello_pm4fg.c:2426: undefined reference to `timer_settime'
C:\Users\chase\production_workspace\hello_MSP_EXP432E401Y_tirtos_gcc\Debug\configPkg/package/cfg/hello_pm4fg.c:2428: undefined reference to `timer_delete'
C:\ti\simplelink_msp432e4_sdk_2_20_00_20\source\ti\ndk\hal\timer_bios\lib\hal_timer.am4fg(lltimer.om4fg): In function `llTimerTick':
/db/vtree/library/trees/mcpi/mcpi-3.60.00.17/exports/coresdk_msp432e4_3_60_00_17/source/ti/ndk/hal/timer_bios/lltimer.c:72: undefined reference to `clock_gettime'
C:\ti\simplelink_msp432e4_sdk_2_20_00_20\source\ti\ndk\hal\timer_bios\lib\hal_timer.am4fg(lltimer.om4fg): In function `llTimerGetTime':
/db/vtree/library/trees/mcpi/mcpi-3.60.00.17/exports/coresdk_msp432e4_3_60_00_17/source/ti/ndk/hal/timer_bios/lltimer.c:130: undefined reference to `clock_gettime'
collect2.exe: error: ld returned 1 exit status
gmake[1]: *** [hello_MSP_EXP432E401Y_tirtos_gcc.out] Error 1
gmake: *** [all] Error 2
makefile:148: recipe for target 'all' failed
**** Build Finished ****
Hi Sai,
Thanks for the response. Using the tcpecho example and enabling HTTP leads to the following error. I was able to fix this by commenting out most of the #ifdef __ti__ section and removing the std.aem4f and os.aem4f libraries.
Thanks for your help,
Chase
**** Build of configuration Debug for project tcpecho_MSP_EXP432E401Y_tirtos_ccs ****
"C:\\ti\\ccsv8\\utils\\bin\\gmake" -k -j 8 all -O
Building target: "tcpecho_MSP_EXP432E401Y_tirtos_ccs.out"
Invoking: ARM Linker
"C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/bin/armcl" -mv7M4 --code_state=16 --float_support=FPv4SPD16 -me --advice:power=none -g --diag_warning=225 --diag_warning=255 --diag_wrap=off --display_error_number --gen_func_subsections=on -z -m"tcpecho_MSP_EXP432E401Y_tirtos_ccs.map" -i"C:/ti/simplelink_msp432e4_sdk_2_20_00_20/source" -i"C:/ti/simplelink_msp432e4_sdk_2_20_00_20/kernel/tirtos/packages" -i"C:/ti/ccsv8/tools/compiler/ti-cgt-arm_18.1.3.LTS/lib" --diag_wrap=off --display_error_number --warn_sections --xml_link_info="tcpecho_MSP_EXP432E401Y_tirtos_ccs_linkInfo.xml" --rom_model -o "tcpecho_MSP_EXP432E401Y_tirtos_ccs.out" "./MSP_EXP432E401Y.obj" "./main_tirtos.obj" "./tcpEcho.obj" "./tcpEchoHooks.obj" "./tirtos/ndk_tirtos.obj" "../MSP_EXP432E401Y_TIRTOS.cmd" -l"ti/net/lib/ccs/m4f/slnetsock_release.a" -l"ti/net/sntp/lib/ccs/m4f/sntp_release.a" -l"ti/net/mqtt/lib/ccs/m4f/mqtt_release.a" -l"ti/net/http/lib/ccs/m4f/httpclient_release.a" -l"ti/ndk/slnetif/lib/slnetifndk.aem4f" -l"third_party/mbedtls/ti/lib/ccs/m4f/mbedtls.a" -l"ti/ndk/hal/timer_bios/lib/hal_timer.aem4f" -l"ti/ndk/hal/eth_stub/lib/hal_eth_stub.aem4f" -l"ti/ndk/tools/cgi/lib/cgi.aem4f" -l"ti/ndk/tools/hdlc/lib/hdlc.aem4f" -l"ti/ndk/tools/console/lib/console_min_ipv4.aem4f" -l"ti/ndk/netctrl/lib/netctrl_min_ipv4.aem4f" -l"ti/ndk/nettools/lib/nettool_ipv4.aem4f" -l"ti/ndk/hal/ser_stub/lib/hal_ser_stub.aem4f" -l"ti/ndk/tools/servers/lib/servers_min_ipv4.aem4f" -l"ti/ndk/hal/userled_stub/lib/hal_userled_stub.aem4f" -l"ti/ndk/stack/lib/stk.aem4f" -l"ti/ndk/os/lib/os.aem4f" -l"ti/display/lib/display.aem4f" -l"ti/grlib/lib/ccs/m4f/grlib.a" -l"third_party/spiffs/lib/ccs/m4f/spiffs.a" -l"ti/drivers/lib/drivers_msp432e4.aem4f" -l"third_party/fatfs/lib/ccs/m4f/fatfs.a" -l"ti/dpl/lib/dpl_msp432e4.aem4f" -l"C:/Users/chase/production_workspace/tirtos_builds_MSP_EXP432E401Y_release_ccs/Debug/configPkg/linker.cmd" -l"ti/devices/msp432e4/driverlib/lib/ccs/m4f/msp432e4_driverlib.a" -llibc.a
<Linking>
error #10056: symbol "ti_ndk_socket_max_fd" redefined: first defined in "./tirtos/ndk_tirtos.obj"; redefined in "C:\Users\chase\production_workspace\tirtos_builds_MSP_EXP432E401Y_release_ccs\Debug\configPkg\package\cfg\release_pem4f.oem4f"
error #10056: symbol "ti_ndk_config_Global_pit" redefined: first defined in "./tirtos/ndk_tirtos.obj"; redefined in "C:\Users\chase\production_workspace\tirtos_builds_MSP_EXP432E401Y_release_ccs\Debug\configPkg\package\cfg\release_pem4f.oem4f"
error #10056: symbol "ti_ndk_config_Global_Id2Size" redefined: first defined in "./tirtos/ndk_tirtos.obj"; redefined in "C:\Users\chase\production_workspace\tirtos_builds_MSP_EXP432E401Y_release_ccs\Debug\configPkg\package\cfg\release_pem4f.oem4f"
error #10056: symbol "ti_ndk_config_Global_rawPageSize" redefined: first defined in "./tirtos/ndk_tirtos.obj"; redefined in "C:\Users\chase\production_workspace\tirtos_builds_MSP_EXP432E401Y_release_ccs\Debug\configPkg\package\cfg\release_pem4f.oem4f"
error #10056: symbol "ti_ndk_config_Global_sizeFrameBuf" redefined: first defined in "./tirtos/ndk_tirtos.obj"; redefined in "C:\Users\chase\production_workspace\tirtos_builds_MSP_EXP432E401Y_release_ccs\Debug\configPkg\package\cfg\release_pem4f.oem4f"
error #10056: symbol "ti_ndk_config_Global_pBufMem" redefined: first defined in "./tirtos/ndk_tirtos.obj"; redefined in "C:\Users\chase\production_workspace\tirtos_builds_MSP_EXP432E401Y_release_ccs\Debug\configPkg\package\cfg\release_pem4f.oem4f"
error #10056: symbol "ti_ndk_config_Global_largest" redefined: first defined in "./tirtos/ndk_tirtos.obj"; redefined in "C:\Users\chase\production_workspace\tirtos_builds_MSP_EXP432E401Y_release_ccs\Debug\configPkg\package\cfg\release_pem4f.oem4f"
error #10056: symbol "ti_ndk_config_Global_rawPageCount" redefined: first defined in "./tirtos/ndk_tirtos.obj"; redefined in "C:\Users\chase\production_workspace\tirtos_builds_MSP_EXP432E401Y_release_ccs\Debug\configPkg\package\cfg\release_pem4f.oem4f"
error #10056: symbol "ti_ndk_config_Global_smallest" redefined: first defined in "./tirtos/ndk_tirtos.obj"; redefined in "C:\Users\chase\production_workspace\tirtos_builds_MSP_EXP432E401Y_release_ccs\Debug\configPkg\package\cfg\release_pem4f.oem4f"
error #10056: symbol "ti_ndk_config_Global_pitBuffer" redefined: first defined in "./tirtos/ndk_tirtos.obj"; redefined in "C:\Users\chase\production_workspace\tirtos_builds_MSP_EXP432E401Y_release_ccs\Debug\configPkg\package\cfg\release_pem4f.oem4f"
error #10056: symbol "ti_ndk_config_Global_pHdrMem" redefined: first defined in "./tirtos/ndk_tirtos.obj"; redefined in "C:\Users\chase\production_workspace\tirtos_builds_MSP_EXP432E401Y_release_ccs\Debug\configPkg\package\cfg\release_pem4f.oem4f"
error #10056: symbol "ti_ndk_config_Global_numFrameBuf" redefined: first defined in "./tirtos/ndk_tirtos.obj"; redefined in "C:\Users\chase\production_workspace\tirtos_builds_MSP_EXP432E401Y_release_ccs\Debug\configPkg\package\cfg\release_pem4f.oem4f"
error #10010: errors encountered during linking; "tcpecho_MSP_EXP432E401Y_tirtos_ccs.out" not built
>> Compilation failure
makefile:177: recipe for target 'tcpecho_MSP_EXP432E401Y_tirtos_ccs.out' failed
gmake[1]: *** [tcpecho_MSP_EXP432E401Y_tirtos_ccs.out] Error 1
makefile:170: recipe for target 'all' failed
gmake: *** [all] Error 2
**** Build Finished ****
**Attention** This is a public forum