Hi,
I'm working on a program on the DSP2 core of the AM572x that uses the IPC packages from TI. I based the project off of the IPC examples provided in the SDK. The build occasionally fails, even when nothing has changed in the files or projects and it seems to be related to an overlap in definitions in the ipc directory and the utils directory. It doesn't fail every time, which had me thinking that maybe having a multithreaded build was occasionally building in an incorrect order, but I disabled multithreaded builds and I'm still seeing the problem.
Here is the build output I'm seeing:
Building target: "IOScannerDSP2.out" Invoking: C6000 Linker "C:/ti/ccs930/ccs/tools/compiler/ti-cgt-c6000_8.3.5/bin/cl6x" -mv6600 --define=am5728 --define=core2 --define=RTOS_BUILD --define=SOC_AM 572x --define=USE_BIOS --define=core1 --define=REMOTEPROC_IPC -g --diag_warning=225 --diag_wrap=off --display_error_number -z -m"IOScann erDSP2.map" --heap_size=0x800 --stack_size=0x800 -i"C:/ti/ccs930/ccs/tools/compiler/ti-cgt-c6000_8.3.5/lib" -i"C:/ti/ccs930/ccs/tools/co mpiler/ti-cgt-c6000_8.3.5/include" --reread_libs --define=CORE2=2 --define=CORE1=1 --diag_wrap=off --display_error_number --warn_section s --xml_link_info="IOScannerDSP2_linkInfo.xml" --rom_model -o "IOScannerDSP2.out" "./DcanConfig.obj" "./IOScanner.obj" "./IOScannerDSP2M ain.obj" "./IoScanner_Console_Operations.obj" "./MainDsp1.obj" "./Server.obj" "../src/ipc/Ipc.obj" "../src/sysbios/BIOS.obj" "../src/sys bios/c62_TaskSupport_asm.obj" "../src/sysbios/c64p_Exception_asm.obj" "../src/sysbios/c64p_Hwi_asm.obj" "../src/sysbios/c64p_Hwi_asm_swi tch.obj" "../src/sysbios/c64p_Hwi_disp_always.obj" "../src/sysbios/dmtimer_Timer_asm.obj" "../src/sysbios/ti_tls_get_tp.obj" "../src/uti ls/UTILS.obj" -l"configPkg/linker.cmd" -llibc.a <Linking> error #10056: symbol "ti_sdo_utils_NameServer_registerRemoteDriver__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in ". ./src/utils/UTILS.obj" error #10056: symbol "NameServer_remove" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "MultiProc_getName" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "NameServer_match" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_MultiProc_dummy__F" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTIL S.obj" error #10056: symbol "ti_sdo_utils_NameServer_postInit__I" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/ UTILS.obj" error #10056: symbol "NameServer_addUInt32" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_NameServerRemoteNull_get__F" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/u tils/UTILS.obj" error #10056: symbol "ti_sdo_utils_List_remove__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.ob j" error #10056: symbol "NameServer_add" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_NameServer_Instance_init__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/u tils/UTILS.obj" error #10056: symbol "ti_sdo_utils_NameServer_unregisterRemoteDriver__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_List_elemClear__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS .obj" error #10056: symbol "MultiProc_getNumProcessors" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj " error #10056: symbol "MultiProc_setLocalId" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "NameServer_create" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "MultiProc_getBaseIdOfCluster" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.o bj" error #10056: symbol "ti_sdo_utils_List_putHead__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.o bj" error #10056: symbol "ti_sdo_utils_NameServer_getKey__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UT ILS.obj" error #10056: symbol "MultiProc_getClusterProcList" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.o bj" error #10056: symbol "NameServer_getLocal" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_List_insert__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.ob j" error #10056: symbol "NameServer_get" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_List_dequeue__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.o bj" error #10056: symbol "ti_sdo_utils_List_Instance_init__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/U TILS.obj" error #10056: symbol "NameServer_getUInt32" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_NameServerRemoteNull_sharedMemReq__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_List_enqueue__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.o bj" error #10056: symbol "ti_sdo_utils_NameServerRemoteNull_Instance_init__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_NameServer_removeLocal__I" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/uti ls/UTILS.obj" error #10056: symbol "NameServer_delete" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_NameServerRemoteNull_attach__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../sr c/utils/UTILS.obj" error #10056: symbol "MultiProc_getNumProcsInCluster" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS .obj" error #10056: symbol "ti_sdo_utils_List_put__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_List_next__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "NameServer_getHandle" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_List_get__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_NameServerRemoteNull_detach__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../sr c/utils/UTILS.obj" error #10056: symbol "MultiProc_getId" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_NameServer_Instance_finalize__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../s rc/utils/UTILS.obj" error #10056: symbol "MultiProc_setBaseIdOfCluster" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.o bj" error #10056: symbol "ti_sdo_utils_NameServer_Module_startup__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/ utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_List_enqueueHead__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTI LS.obj" error #10056: symbol "ti_sdo_utils_List_empty__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj " error #10056: symbol "NameServer_getLocalUInt32" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "MultiProc_self" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "NameServer_Params_init" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "NameServer_removeEntry" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_MultiProc_getClusterId__F" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/uti ls/UTILS.obj" error #10056: symbol "ti_sdo_utils_List_prev__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils/UTILS.obj" error #10056: symbol "ti_sdo_utils_NameServer_findLocal__I" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/utils /UTILS.obj" error #10056: symbol "ti_sdo_utils_NameServer_isRegistered__E" redefined: first defined in "../src/ipc/Ipc.obj"; redefined in "../src/ut ils/UTILS.obj" error #10010: errors encountered during linking; "IOScannerDSP2.out" not built >> Compilation failure makefile:160: recipe for target 'IOScannerDSP2.out' failed gmake: *** [IOScannerDSP2.out] Error 1 gmake: Target 'all' not remade because of errors. **** Build Finished ****
Any help would be appreciated!
-Jon