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.

Packet Loss Concealment (PLC) unit of VoLib for C55x and CCSv4 and CPU Rev3

Dear All,

The source files test.c and mem.c in the above mentioned unit require the following file to be added:

xdc/std.h which in turn requires ti/targets/select.h to be included.

But there is one more std.h in the ti/targets folder and hence when I try to build I get multiple definition errors. Please help me to resolve this.

Thanks & Regards,

Ashok

  • Hi,

    We will get back to you shortly to address your request.

    Regards,

    Sivaraj K

  • Thanks Sivaraj.

    FYI:

    CCS version 4

    Code Generation Tools: 4.3.9

    XDC Tools: 3.22.01.21

    BIOS Tools: 5.41.10.36

    The include paths to the project are:

    "C:\Program Files\Texas Instruments\xdctools_3_22_01_21\packages"

    "C:\Program Files\Texas Instruments\xdais_7_10_00_06\packages"

    "C:\ti\volib_C55_CPU3_2_1_0_1\packages"

    "${CG_TOOL_ROOT}/include"

    The error that I see are:

    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/std.h", line 89: error: "xdc_IArg" has already been declared in the current scope
    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/std.h", line 90: error: "xdc_UArg" has already been declared in the current scope

    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/std.h", line 91: error: "xdc_Int8" has already been declared in the current scope
    >> Compilation failure
    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/std.h", line 92: error: "xdc_UInt8" has already been declared in the current scope
    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/std.h", line 93: error: "xdc_Int16" has already been declared in the current scope
    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/std.h", line 94: error: "xdc_UInt16" has already been declared in the current scope
    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/std.h", line 95: error: "xdc_Int32" has already been declared in the current scope
    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/std.h", line 96: error: "xdc_UInt32" has already been declared in the current scope

    Thanks & Regards,

    Ashok

  • I tested the following toolset for PLC and didn't have any issue to build

    -CCS 5.5

    -CGT 4.4.1

    -XDC 3.23.04.60

    -XDAIS 7.21.01.07

    Can you try above toolset?

    Regards, Eric

  • Build log:

    **** Build of configuration Debug for project test_rel_C5510_C55L_COFF ****

    "C:\\ti_5_5\\ccsv5\\utils\\bin\\gmake" -k all

    'Building file: C:/ti/volib_c55_2_0_0_3/packages/ti/mas/plc/test/src/mem.c'

    'Invoking: C5500 Compiler'

    "C:/ti_5_5/ccsv5/tools/compiler/c5500_4.4.1/bin/cl55" -vcpu:2.1 --memory_model=large -g --optimize_with_debug --include_path="C:/ti_5_5/xdais_7_21_01_07/packages" --include_path="C:/ti/xdctools_3_23_04_60/packages" --include_path="C:/ti_5_5/ccsv5/tools/compiler/c5500_4.4.1/include" --include_path="../../../../../../../" --include_path="../../../lnkr/c55l" --include_path="../../../src" --define=ti_targets_C55_large --define=xdc_target_types__=ti/targets/std.h --define=__CCS_PROJECT_REL_PATH --define=C5510 --display_error_number --diag_suppress=1112 --diag_suppress=825 --diag_suppress=838 --diag_suppress=828 --diag_suppress=827 --diag_suppress=77 --diag_suppress=837 --diag_suppress=824 --diag_warning=225 --ptrdiff_size=16 --algebraic -k --c_src_interlist --output_all_syms --preproc_with_compile --preproc_dependency="mem.pp" "C:/ti/volib_c55_2_0_0_3/packages/ti/mas/plc/test/src/mem.c"

    'Finished building: C:/ti/volib_c55_2_0_0_3/packages/ti/mas/plc/test/src/mem.c'

    ' '

    'Building file: C:/ti/volib_c55_2_0_0_3/packages/ti/mas/plc/test/src/test.c'

    'Invoking: C5500 Compiler'

    "C:/ti_5_5/ccsv5/tools/compiler/c5500_4.4.1/bin/cl55" -vcpu:2.1 --memory_model=large -g --optimize_with_debug --include_path="C:/ti_5_5/xdais_7_21_01_07/packages" --include_path="C:/ti/xdctools_3_23_04_60/packages" --include_path="C:/ti_5_5/ccsv5/tools/compiler/c5500_4.4.1/include" --include_path="../../../../../../../" --include_path="../../../lnkr/c55l" --include_path="../../../src" --define=ti_targets_C55_large --define=xdc_target_types__=ti/targets/std.h --define=__CCS_PROJECT_REL_PATH --define=C5510 --display_error_number --diag_suppress=1112 --diag_suppress=825 --diag_suppress=838 --diag_suppress=828 --diag_suppress=827 --diag_suppress=77 --diag_suppress=837 --diag_suppress=824 --diag_warning=225 --ptrdiff_size=16 --algebraic -k --c_src_interlist --output_all_syms --preproc_with_compile --preproc_dependency="test.pp" "C:/ti/volib_c55_2_0_0_3/packages/ti/mas/plc/test/src/test.c"

    'Finished building: C:/ti/volib_c55_2_0_0_3/packages/ti/mas/plc/test/src/test.c'

    ' '

    'Building target: test_rel_C5510_C55L_COFF.out'

    'Invoking: C5500 Linker'

    "C:/ti_5_5/ccsv5/tools/compiler/c5500_4.4.1/bin/cl55" -vcpu:2.1 --memory_model=large -g --optimize_with_debug --define=ti_targets_C55_large --define=xdc_target_types__=ti/targets/std.h --define=__CCS_PROJECT_REL_PATH --define=C5510 --display_error_number --diag_suppress=1112 --diag_suppress=825 --diag_suppress=838 --diag_suppress=828 --diag_suppress=827 --diag_suppress=77 --diag_suppress=837 --diag_suppress=824 --diag_warning=225 --ptrdiff_size=16 --algebraic -k --c_src_interlist --output_all_syms -z -m"test_rel_C5510_C55L_COFF.map" -i"C:/ti_5_5/ccsv5/tools/compiler/c5500_4.4.1/lib" -i"C:/ti_5_5/ccsv5/tools/compiler/c5500_4.4.1/include" --reread_libs --warn_sections --xml_link_info="test_rel_C5510_C55L_COFF_linkInfo.xml" --rom_model -o "test_rel_C5510_C55L_COFF.out" "./test.obj" "./mem.obj" "C:/ti/volib_c55_2_0_0_3/packages/ti/mas/plc/test/lnkr/c55l/test_rel_C5510_ccs.cmd" -l"libc.a"

    <Linking>

    warning #10247-D: creating output section "vectors" without a SECTIONS

    specification

    'Finished building target: test_rel_C5510_C55L_COFF.out'

  • Ashok,
    you are most likely hitting a bug that was fixed in XDCtools 3.23.02. That release officially does not support C5500, but then the release you are using does not support C5500 either, so I am not sure if the update would work for you.
    Luckily, the fix is simple so you can try it in your XDCtools installation and check if helps. Open xdc/std.h and look for the line that begins with
    #error xdc_target_types__
    It should be line 94 or something close. The next line is '#endif'. You should remove that next line, and then add '#endif' right after
    typedef unsigned int xdc_UInt32;
    That should result in two '#endif' line, one after another.
    Check if that helps. 

  • Hi Sasha,

    Thanks for the help. I just added --define=xdc_target_types__=ti/targets/std.h to my build options as mentioned in the build log of one of the previous post and it worked for me. The build went through. Hope that is correct.

    Regards,

    Ashok