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/IWR1642: compilation problem

Part Number: IWR1642
Other Parts Discussed in Thread: MATHLIB, SYSBIOS

Tool/software: Code Composer Studio

**** Build of configuration Debug for project mmw_dss ****

"D:\\TI\\ccsv7\\utils\\bin\\gmake" -k -j 8 all -O
rm -f D:/workspace_v7/mmw_dss/xwr16xx_mmw_dss.bin
makefile:187: recipe for target 'pre-build' failed
process_begin: CreateProcess(NULL, rm -f D:/workspace_v7/mmw_dss/xwr16xx_mmw_dss.bin, ...) failed.
make (e=2): The system cannot find the file specified.

gmake[1]: [pre-build] Error 2 (ignored)
' '
'Building target: xwr16xx_mmw_dss.xe674'
'Invoking: C6000 Linker'
"D:/TI/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3/bin/cl6x" -mv6740 --abi=eabi -O3 -g --gcc --define=SOC_XWR16XX --define=SUBSYS_DSS --define=DOWNLOAD_FROM_CCS --define=DebugP_ASSERT_ENABLED --define=_LITTLE_ENDIAN=1 --diag_wrap=off --display_error_number --diag_warning=225 --gen_func_subsections=on --obj_extension=.oe674 -z -m"xwr16xx_mmw_dss.map" --stack_size=0x800 --heap_size=0x800 -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/control/mmwave/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/control/mmwavelink/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/crc/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/mailbox/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/osal/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/soc/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/uart/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/edma/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/adcbuf/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/alg/mmwavelib/lib" -i"C:/ti/dsplib_c64Px_3_4_0_0/packages/ti/dsplib/lib" -i"C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/lib" -i"D:/TI/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3/lib" -i"D:/TI/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3/include" --reread_libs --disable_auto_rts --define=_LITTLE_ENDIAN --display_error_number --diag_wrap=off --warn_sections --diag_warning=225 --xml_link_info="xwr16xx_mmw_dss_linkInfo.xml" --ram_model --unused_section_elimination=on -o "xwr16xx_mmw_dss.xe674" "./dss_config_edma_util.oe674" "./dss_data_path.oe674" "./dss_main.oe674" "../c674x_linker.cmd" "../dss_mmw_linker.cmd" -l"configPkg/linker.cmd" -llibosal_xwr16xx.ae674 -llibsoc_xwr16xx.ae674 -llibcrc_xwr16xx.ae674 -llibuart_xwr16xx.ae674 -llibmailbox_xwr16xx.ae674 -llibmmwavelink_xwr16xx.ae674 -llibmmwave_xwr16xx.ae674 -lmathlib.ae674 -ldsplib.ae64P -llibedma_xwr16xx.ae674 -llibadcbuf_xwr16xx.ae674 -llibmmwavealg_xwr16xx.ae674 -lrts6740_elf.lib -llibc.a -llibc.a
<Linking>

 undefined            first referenced     
  symbol                  in file          
 ---------            ----------------     
 gen_twiddle_fft16x16 ./dss_data_path.oe674
 gen_twiddle_fft32x32 ./dss_data_path.oe674

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

>> Compilation failure
makefile:163: recipe for target 'xwr16xx_mmw_dss.xe674' failed
gmake[2]: *** [xwr16xx_mmw_dss.xe674] Error 1
makefile:159: recipe for target 'main-build' failed
gmake[1]: *** [main-build] Error 2
makefile:154: recipe for target 'all' failed
gmake: *** [all] Error 2

**** Build Finished ****

  • All functions exist and all includes too.
    I tried to remove includes of "gen_twiddle_fft16x16.h/32x32.h" from dss_data_path.c and write two empty functions and in this case compilation was finished successfully.
  • Hi Alex,

    I am assuming that you are trying to build the mmWave SDK Demo - 16xx projects provided at http://dev.ti.com/tirex/#/?link=Software%2FmmWave%20Training%2FDemos%2FmmWave%20SDK%20Demo%20-%2016xx

    We are not able to reproduce this issue at our end and both the MSS and DSS projects compile successfully. Let's start with the following steps to in order to localize the problem on your setup:

    1. A new release of the mmWave Training Series (v 1.2.1) is available at http://dev.ti.com/tirex/#/?link=Software%2FmmWave%20Training which you can download directly from the CCS Resource Explorer. This release updates the projects for compatibility with CCS v 7.2 (and maintains compatibility with CCS v 7.1). Though not absolutely necessary, it would be good to move to the latest version. It is mandatory is you're using CCS 7.2

    2. The output log you provided only shows the linking steps. Please clean the DSS project and re-build to get the complete log with compilation steps as well and provide here. It is not possible to say what went wrong during compilation and if these two files were compiled or not thus resulting in a linking error.

    3. I noticed that you have your CCS and your Workspace installation in D:\ drive. I am not saying that this is a problem but the one limitation we have with our current DSS project spec is that the paths to DSPLIB and MATHLIB installations are hard-coded to C:\ti\ base location (this will be removed in the next release of mmWave Training Projects). Without looking at the complete compiler output, I cannot say if this is creating an issue but it might be worth to try out with everything (dependencies, ccs tools, workspace) on the same partition (C:\ preferred as all tools are installed under C:\ti based on your log). Again, we need the complete compiler log to find out the problem.

    Regards

    -Nitin

  • **** Build of configuration Debug for project mmw_dss ****

    "D:\\TI\\ccsv7\\utils\\bin\\gmake" -k -j 8 all -O
    rm -f D:/workspace_v7/mmw_dss/xwr16xx_mmw_dss.bin
    makefile:187: recipe for target 'pre-build' failed
    process_begin: CreateProcess(NULL, rm -f D:/workspace_v7/mmw_dss/xwr16xx_mmw_dss.bin, ...) failed.
    make (e=2): The system cannot find the file specified.

    gmake[1]: [pre-build] Error 2 (ignored)
    ' '
    'Building file: ../dss_mmw.cfg'
    'Invoking: XDCtools'
    "D:/TI/xdctools_3_50_02_20_core/xs" --xdcpath="C:/ti/bios_6_50_01_12/packages;C:/ti/mathlib_c674x_3_1_2_1/packages;C:/ti/dsplib_c674x_3_4_0_0/packages;D:/TI/ccsv7/ccs_base;" xdc.tools.configuro -o configPkg -t ti.targets.elf.C674 -p ti.platforms.c6x:IWR16XX:false:600 -r debug -c "D:/TI/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3" "../dss_mmw.cfg"
    making package.mak (because of package.bld) ...
    generating interfaces for package configPkg (because package/package.xdc.inc is older than package.xdc) ...
    configuring dss_mmw.xe674 from package/cfg/dss_mmw_pe674.cfg ...
    generating custom ti.sysbios library makefile ...
    Starting build of library sources ...
    making D:/workspace_v7/mmw_dss/src/sysbios/sysbios.ae674 ...
    gmake[1]: Entering directory `D:/workspace_v7/mmw_dss/src/sysbios'
    gmake[1]: Nothing to be done for `all'.
    gmake[1]: Leaving directory `D:/workspace_v7/mmw_dss/src/sysbios'
    Build of libraries done.
    cle674 package/cfg/dss_mmw_pe674.c ...
    'Finished building: ../dss_mmw.cfg'
    ' '
    'Building file: ../dss_config_edma_util.c'
    'Invoking: C6000 Compiler'
    "D:/TI/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3/bin/cl6x" -mv6740 --abi=eabi -O3 --include_path="D:/workspace_v7/mmw_dss" --include_path="C:/ti/mmwave_sdk_01_00_00_05/packages" --include_path="C:/ti/mathlib_c674x_3_1_2_1/packages" --include_path="C:/ti/dsplib_c64Px_3_4_0_0/packages/ti/dsplib/src/DSP_fft16x16/c64P" --include_path="C:/ti/dsplib_c64Px_3_4_0_0/packages/ti/dsplib/src/DSP_fft32x32/c64P" --include_path="D:/TI/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3/include" -g --gcc --define=SOC_XWR16XX --define=SUBSYS_DSS --define=DOWNLOAD_FROM_CCS --define=DebugP_ASSERT_ENABLED --define=_LITTLE_ENDIAN=1 --diag_wrap=off --display_error_number --diag_warning=225 --gen_func_subsections=on --obj_extension=.oe674 --preproc_with_compile --preproc_dependency="dss_config_edma_util.d" --cmd_file="configPkg/compiler.opt" "../dss_config_edma_util.c"
    'Finished building: ../dss_config_edma_util.c'
    ' '
    'Building file: ../dss_main.c'
    'Invoking: C6000 Compiler'
    "D:/TI/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3/bin/cl6x" -mv6740 --abi=eabi -O3 --include_path="D:/workspace_v7/mmw_dss" --include_path="C:/ti/mmwave_sdk_01_00_00_05/packages" --include_path="C:/ti/mathlib_c674x_3_1_2_1/packages" --include_path="C:/ti/dsplib_c64Px_3_4_0_0/packages/ti/dsplib/src/DSP_fft16x16/c64P" --include_path="C:/ti/dsplib_c64Px_3_4_0_0/packages/ti/dsplib/src/DSP_fft32x32/c64P" --include_path="D:/TI/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3/include" -g --gcc --define=SOC_XWR16XX --define=SUBSYS_DSS --define=DOWNLOAD_FROM_CCS --define=DebugP_ASSERT_ENABLED --define=_LITTLE_ENDIAN=1 --diag_wrap=off --display_error_number --diag_warning=225 --gen_func_subsections=on --obj_extension=.oe674 --preproc_with_compile --preproc_dependency="dss_main.d" --cmd_file="configPkg/compiler.opt" "../dss_main.c"
    "C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/src/common/common.h", line 55: warning #48-D: incompatible redefinition of macro "TRUE" (declared at line 323 of "D:/TI/xdctools_3_50_02_20_core/packages/xdc/std.h")
    "C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/src/common/common.h", line 56: warning #48-D: incompatible redefinition of macro "FALSE" (declared at line 320 of "D:/TI/xdctools_3_50_02_20_core/packages/xdc/std.h")
    'Finished building: ../dss_main.c'
    ' '
    'Building file: ../dss_data_path.c'
    'Invoking: C6000 Compiler'
    "D:/TI/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3/bin/cl6x" -mv6740 --abi=eabi -O3 --include_path="D:/workspace_v7/mmw_dss" --include_path="C:/ti/mmwave_sdk_01_00_00_05/packages" --include_path="C:/ti/mathlib_c674x_3_1_2_1/packages" --include_path="C:/ti/dsplib_c64Px_3_4_0_0/packages/ti/dsplib/src/DSP_fft16x16/c64P" --include_path="C:/ti/dsplib_c64Px_3_4_0_0/packages/ti/dsplib/src/DSP_fft32x32/c64P" --include_path="D:/TI/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3/include" -g --gcc --define=SOC_XWR16XX --define=SUBSYS_DSS --define=DOWNLOAD_FROM_CCS --define=DebugP_ASSERT_ENABLED --define=_LITTLE_ENDIAN=1 --diag_wrap=off --display_error_number --diag_warning=225 --gen_func_subsections=on --obj_extension=.oe674 --preproc_with_compile --preproc_dependency="dss_data_path.d" --cmd_file="configPkg/compiler.opt" "../dss_data_path.c"
    "C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/src/common/common.h", line 55: warning #48-D: incompatible redefinition of macro "TRUE" (declared at line 323 of "D:/TI/xdctools_3_50_02_20_core/packages/xdc/std.h")
    "C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/src/common/common.h", line 56: warning #48-D: incompatible redefinition of macro "FALSE" (declared at line 320 of "D:/TI/xdctools_3_50_02_20_core/packages/xdc/std.h")
    'Finished building: ../dss_data_path.c'
    ' '
    'Building target: xwr16xx_mmw_dss.xe674'
    'Invoking: C6000 Linker'
    "D:/TI/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3/bin/cl6x" -mv6740 --abi=eabi -O3 -g --gcc --define=SOC_XWR16XX --define=SUBSYS_DSS --define=DOWNLOAD_FROM_CCS --define=DebugP_ASSERT_ENABLED --define=_LITTLE_ENDIAN=1 --diag_wrap=off --display_error_number --diag_warning=225 --gen_func_subsections=on --obj_extension=.oe674 -z -m"xwr16xx_mmw_dss.map" --stack_size=0x800 --heap_size=0x800 -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/control/mmwave/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/control/mmwavelink/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/crc/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/mailbox/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/osal/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/soc/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/uart/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/edma/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/drivers/adcbuf/lib" -i"C:/ti/mmwave_sdk_01_00_00_05/packages/ti/alg/mmwavelib/lib" -i"C:/ti/dsplib_c64Px_3_4_0_0/packages/ti/dsplib/lib" -i"C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/lib" -i"D:/TI/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3/lib" -i"D:/TI/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3/include" --reread_libs --disable_auto_rts --define=_LITTLE_ENDIAN --display_error_number --diag_wrap=off --warn_sections --diag_warning=225 --xml_link_info="xwr16xx_mmw_dss_linkInfo.xml" --ram_model --unused_section_elimination=on -o "xwr16xx_mmw_dss.xe674" "./dss_config_edma_util.oe674" "./dss_data_path.oe674" "./dss_main.oe674" "../c674x_linker.cmd" "../dss_mmw_linker.cmd" -l"configPkg/linker.cmd" -llibosal_xwr16xx.ae674 -llibsoc_xwr16xx.ae674 -llibcrc_xwr16xx.ae674 -llibuart_xwr16xx.ae674 -llibmailbox_xwr16xx.ae674 -llibmmwavelink_xwr16xx.ae674 -llibmmwave_xwr16xx.ae674 -lmathlib.ae674 -ldsplib.ae64P -llibedma_xwr16xx.ae674 -llibadcbuf_xwr16xx.ae674 -llibmmwavealg_xwr16xx.ae674 -lrts6740_elf.lib -llibc.a -llibc.a
    <Linking>

    undefined first referenced
    symbol in file
    --------- ----------------
    gen_twiddle_fft16x16 ./dss_data_path.oe674
    gen_twiddle_fft32x32 ./dss_data_path.oe674

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

    >> Compilation failure
    makefile:163: recipe for target 'xwr16xx_mmw_dss.xe674' failed
    gmake[2]: *** [xwr16xx_mmw_dss.xe674] Error 1
    makefile:159: recipe for target 'main-build' failed
    gmake[1]: *** [main-build] Error 2
    makefile:154: recipe for target 'all' failed
    gmake: *** [all] Error 2

    **** Build Finished ****
  • This is full rebuild after clean. If you can locate problem I will be glad to fix it as is, if not I will try reinstall CCS to c:\ drive and try over.
    Thanks
  • Hi Alex,

    I have attached the build log from my setup (and yours as well for easy comparison) and I find a few differences in your compile as compared to mine.

    /cfs-file/__key/communityserver-discussions-components-files/1023/1642_5F00_DSS_5F00_build_5F00_Alex.txt

    /cfs-file/__key/communityserver-discussions-components-files/1023/4353.1642_5F00_DSS_5F00_build_5F00_ti.txt

    1. You're using a different version of XDC tools, xdctools_3_50_02_20_core while the demo has been tested with xdctools_3_50_00_10_core. Please install the required version and perform a clean build.

    2. I see that your RTSC build profile is debug. Did you change this or was it that way in the TI provided projectspec?

    (Alex) "D:/TI/xdctools_3_50_02_20_core/xs" --xdcpath="C:/ti/bios_6_50_01_12/packages;C:/ti/mathlib_c674x_3_1_2_1/packages;C:/ti/dsplib_c674x_3_4_0_0/packages;D:/TI/ccsv7/ccs_base;" xdc.tools.configuro -o configPkg -t ti.targets.elf.C674 -p ti.platforms.c6x:IWR16XX:false:600 -r debug -c "D:/TI/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3" "../dss_mmw.cfg"

    vs

     (TI) "C:/ti/xdctools_3_50_00_10_core/xs" --xdcpath="C:/ti/bios_6_50_01_12/packages;C:/ti/ccsv7/ccs_base;" xdc.tools.configuro -o configPkg -t ti.targets.elf.C674 -p ti.platforms.c6x:IWR16XX:false:600 -r release -c "C:/ti/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3" "../dss_mmw.cfg"

    3. In my log, the files gen_twiddle_fft16x16.c and gen_twiddle_fft32x32.c are being compiled while they don't get compiled in your log. The following is from the compiler log on my bench. 

    'Building file: ../gen_twiddle_fft16x16.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3/bin/cl6x" -mv6740 --abi=eabi -O3 --include_path="C:/Users/nsakhuja/workspace_v7/mmw_dss" --include_path="C:/ti/mmwave_sdk_01_00_00_05/packages" --include_path="C:/ti/mathlib_c674x_3_1_2_1/packages" --include_path="C:/ti/dsplib_c64Px_3_4_0_0/packages/ti/dsplib/src/DSP_fft16x16/c64P" --include_path="C:/ti/dsplib_c64Px_3_4_0_0/packages/ti/dsplib/src/DSP_fft32x32/c64P" --include_path="C:/ti/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3/include" -g --gcc --define=SOC_XWR16XX --define=SUBSYS_DSS --define=DOWNLOAD_FROM_CCS --define=DebugP_ASSERT_ENABLED --diag_wrap=off --display_error_number --diag_warning=225 --gen_func_subsections=on --obj_extension=.oe674 --preproc_with_compile --preproc_dependency="gen_twiddle_fft16x16.d" --cmd_file="configPkg/compiler.opt" "../gen_twiddle_fft16x16.c"
    'Finished building: ../gen_twiddle_fft16x16.c'
    ' '
    'Building file: ../gen_twiddle_fft32x32.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3/bin/cl6x" -mv6740 --abi=eabi -O3 --include_path="C:/Users/nsakhuja/workspace_v7/mmw_dss" --include_path="C:/ti/mmwave_sdk_01_00_00_05/packages" --include_path="C:/ti/mathlib_c674x_3_1_2_1/packages" --include_path="C:/ti/dsplib_c64Px_3_4_0_0/packages/ti/dsplib/src/DSP_fft16x16/c64P" --include_path="C:/ti/dsplib_c64Px_3_4_0_0/packages/ti/dsplib/src/DSP_fft32x32/c64P" --include_path="C:/ti/ccsv7/tools/compiler/ti-cgt-c6000_8.1.3/include" -g --gcc --define=SOC_XWR16XX --define=SUBSYS_DSS --define=DOWNLOAD_FROM_CCS --define=DebugP_ASSERT_ENABLED --diag_wrap=off --display_error_number --diag_warning=225 --gen_func_subsections=on --obj_extension=.oe674 --preproc_with_compile --preproc_dependency="gen_twiddle_fft32x32.d" --cmd_file="configPkg/compiler.opt" "../gen_twiddle_fft32x32.c"
    'Finished building: ../gen_twiddle_fft32x32.c'
    ' '

    Regards

    -Nitin

     

  • I think the problem is solved.

    I inserted only one project of mmw_dss and did not inserted project of mmw. After inserting this project into the project space compilation of mmw_dss passed sucsessfully

  • Hi, the problem almost solved. Now my code compiled and even run at debug mode but!
    There is some problem that I see even at code compilation log that you supplied, see lines 65,66  

    <Linking>
    "../dss_mmw_linker.cmd", line 44: warning #10068-D: no matching section

    At my application when I run at debug mode there is an always crash.  

    See the console prints:

    [C674X_0] Debug: Logging UART Instance @008155f8 has been opened successfully
    Debug: DSS Mailbox Handle @0080f570
    Debug: MMWDemoDSS create event handle succeeded
    Debug: MMWDemoDSS mmWave Control Initialization succeeded
    Debug: MMWDemoDSS ADCBUF Instance(0) @008155c8 has been opened successfully
    Debug: MMWDemoDSS Data Path init succeeded
    Debug: MMWDemoDSS Data Path Task Start
    Debug: MMWDemoDSS initTask exit
    Heap L1 : size 16384 (0x4000), free 2816 (0xb00)
    Heap L2 : size 49152 (0xc000), free 34920 (0x8868)
    Heap L3 : size 655360 (0xa0000), free 90112 (0x16000)
    Debug: MMWDemoDSS Data Path config PASS
    Debug: MMWDemoDSS Data Path start PASS
    Debug: MMWDemoDSS Data Path start PASS
    {module#8}: "../dss_main.c", line 264: error {id:0x10000, args:[0x8140ec, 0x8140ec]}
    xdc.runtime.Error.raise: terminating execution

    That is a code of dss_main.c line 263,264

    /* Check if previous chirp processing has completed */
    DebugP_assert(gMmwDssMCB.dataPathObj.interFrameProcToken == 0);

    The software not always response to the break points...

     

  • Hi Alex,

    Based on our discussion over the call, the error reported in your last post was caused due to improper debugging procedure so I'm re-closing this thread. Please open a new thread if you have further questions in this regard.

    Thanks
    -Nitin