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.

CCS/CC2640R2F: App Link error with BLE stack, any clue ?

Part Number: CC2640R2F
Other Parts Discussed in Thread: CC2640, , CC2650

Tool/software: Code Composer Studio

Dear All,

I tried to migrate my project from CC2640 to CC2640R2F with new sdk but encounter link error with unresolved symbol.

Message as following:

Any clue on cause or what missing ?

====================================

Building target: ibs02_r2f_app.out
Invoking: ARM Linker
"/home/itrs/ti/ccsv7/tools/compiler/ti-cgt-arm_16.9.1.LTS/bin/armcl" --cmd_file="/home/itrs/ti/simplelink_cc2640r2_sdk_1_30_00_25/source/ti/blestack/config/build_components.opt" --cmd_file="/home/itrs/ti/simplelink_cc2640r2_sdk_1_30_00_25/source/ti/blestack/config/factory_config.opt" --cmd_file="/home/itrs/Work-bt/ingics-ble-ti/proj/ibs02_r2f/src/../config/build_config.opt" --cmd_file="/home/itrs/Work-bt/ingics-ble-ti/proj/ibs02_r2f/src/../config/ccs_compiler_defines.bcfg" -mv7M3 --code_state=16 -me -O4 --opt_for_speed=0 --define=DEVICE_FAMILY=cc26x0r2 --define=BOARD_DISPLAY_USE_LCD=0 --define=BOARD_DISPLAY_USE_UART=1 --define=BOARD_DISPLAY_USE_UART_ANSI=1 --define=IBS02 --define=xCC2640R2_LAUNCHXL --define=CC26XX --define=CC26XX_R2 --define=HEAPMGR_SIZE=0 --define=ICALL_EVENTS --define=ICALL_JT --define=ICALL_LITE --define=ICALL_MAX_NUM_ENTITIES=6 --define=ICALL_MAX_NUM_TASKS=3 --define=POWER_SAVING --define=USE_CORE_SDK --define=USE_ICALL --define=xdc_runtime_Assert_DISABLE_ALL --define=xdc_runtime_Log_DISABLE_ALL -g --c99 --gcc --diag_warning=225 --diag_wrap=off --display_error_number --gen_func_subsections=on --abi=eabi -z -m"ibs02_r2f_app.map" --heap_size=0 --stack_size=256 -i"/home/itrs/ti/ccsv7/tools/compiler/ti-cgt-arm_16.9.1.LTS/lib" -i"/home/itrs/ti/ccsv7/tools/compiler/ti-cgt-arm_16.9.1.LTS/include" --reread_libs --define=CC26X0ROM=2 --diag_suppress=16002-D --diag_suppress=10247-D --diag_suppress=10325-D --diag_suppress=10229-D --diag_wrap=off --display_error_number --warn_sections --xml_link_info="ibs02_r2f_app_linkInfo.xml" --rom_model -o "ibs02_r2f_app.out" "./Application/src/board_key.obj" "./Application/src/ccfg_app_ble.obj" "./Application/src/i2c_si114x.obj" "./Application/src/ibs02cfg.obj" "./Application/src/igs_beacon.obj" "./Application/src/lis2dh.obj" "./Application/src/main.obj" "./Application/src/si7021.obj" "./Application/src/tinyprintf.obj" "./Application/src/uart_printf.obj" "./Drivers/ECC/ECCROMCC26XX.obj" "./Drivers/RF/RFCC26XX_singleMode.obj" "./Drivers/TRNG/TRNGCC26XX.obj" "./ICall/icall.obj" "./ICall/icall_cc2650.obj" "./ICall/icall_user_config.obj" "./ICallBLE/ble_user_config.obj" "./ICallBLE/icall_api_lite.obj" "./PROFILES/devinfoservice.obj" "./Startup/board.obj" -l"configPkg/linker.cmd" -l"/home/itrs/ti/simplelink_cc2640r2_sdk_1_30_00_25/source/ti/devices/cc26x0r2/driverlib/bin/ccs/driverlib.lib" -l"/home/itrs/ti/simplelink_cc2640r2_sdk_1_30_00_25/source/ti/blestack/rom/ble_rom_releases/cc26xx_r2/Final_Release/common_r2.symbols" -l"/home/itrs/ti/simplelink_cc2640r2_sdk_1_30_00_25/source/ti/drivers/lib/drivers_cc26x0r2.aem3" -l"/home/itrs/ti/simplelink_cc2640r2_sdk_1_30_00_25/source/ti/display/lib/display.aem3" -l"/home/itrs/ti/simplelink_cc2640r2_sdk_1_30_00_25/kernel/tirtos/packages/ti/dpl/lib/dpl_cc26x0r2.aem3" -l"/home/itrs/Work-bt/ingics-ble-ti/proj/ibs02_r2f/config/ccs_linker_defines.cmd" -l"/home/itrs/ti/simplelink_cc2640r2_sdk_1_30_00_25/source/ti/blestack/common/cc26xx/ccs/cc26xx_app.cmd" -llibc.a -llibc.a
<Linking>

undefined first referenced
symbol in file
--------- ----------------
GAPBondMgr_Register <whole-program>
GAPBondMgr_SetParameter <whole-program>
GAPRole_GetParameter <whole-program>
GAPRole_SetParameter <whole-program>
GAPRole_StartDevice <whole-program>
GAPRole_TerminateConnection <whole-program>
GAPRole_createTask <whole-program>
GAP_RegisterForMsgs <whole-program>
GAP_SetParamValue <whole-program>
GATTServApp_AddService <whole-program>
GATTServApp_RegisterService <whole-program>
GATT_RegisterForMsgs <whole-program>
GATT_SendRsp <whole-program>
GGS_AddService <whole-program>
GGS_SetParameter <whole-program>
HCI_EXT_AdvEventNoticeCmd <whole-program>
HCI_EXT_ConnEventNoticeCmd <whole-program>
HCI_EXT_SetTxPowerCmd <whole-program>
I2C_config /home/itrs/ti/simplelink_cc2640r2_sdk_1_30_00_25/source/ti/drivers/lib/drivers_cc26x0r2.aem3<I2C.oem3>
I2C_count /home/itrs/ti/simplelink_cc2640r2_sdk_1_30_00_25/source/ti/drivers/lib/drivers_cc26x0r2.aem3<I2C.oem3>
Util_constructClock <whole-program>
Util_constructQueue <whole-program>
Util_convertBdAddr2Str <whole-program>
Util_dequeueMsg <whole-program>
Util_enqueueMsg <whole-program>
Util_startClock <whole-program>
charUserDescUUID <whole-program>
characterUUID <whole-program>
linkDB_GetInfo <whole-program>
linkDB_NumActive <whole-program>
osal_snv_read <whole-program>
osal_snv_write <whole-program>
primaryServiceUUID <whole-program>
user0Cfg <whole-program>

error #10234-D: unresolved symbols remain
error #10010: errors encountered during linking; "ibs02_r2f_app.out" not built

>> Compilation failure
makefile:181: recipe for target 'ibs02_r2f_app.out' failed
gmake[1]: *** [ibs02_r2f_app.out] Error 1
gmake: *** [all] Error 2
makefile:177: recipe for target 'all' failed

**** Build Finished ****

  • Hi Sam,

    It looks like you may have a mix of errors. They seem to come from two places mainly:

    1. Incorrect path(s) in your ported projects. For example Util_ functions are application code found in util.c,.h. Do you have the correct include paths setup for these files? Do you have the files building as part of your project? This is also true of GAPRole.
    2. Incorrect library configuration or no libraries at all. This likely comes from the HCI_ and GGS_ functions that are not being linked. Have you rebuilt the stack project and have you ported your previous build_config.opt setting to the new stack project?

    Can you post your build log for both your app and stack projects? (make sure to select rebuild all). Additionally please do not copy and paste the entire logs into the comment as they will be quite long and unreadable. Please instead use the rich formatting button to attach files.