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.

TDA2PXEVM: Building a C++14 DSP AlgorithmLink

Part Number: TDA2PXEVM

Hello TI Team, 

I'm trying to create a new AlgorithmLink to run on the TDA2PXEVM DSP cores. 

I've created the following directory my_alglink in the path vision_sdk/apps/src/rtos/alg_plugins/

then added the following SRC_FILES.MK

SRCDIR += my_alglink

SRCS_c66xdsp_1 += my_alglinkLink_algPlugin.c my_alglink.c

SRCS_CPP_c66xdsp_1 += my_alglink_core.cpp


my_alglink_core.cpp uses the c++ linear Algebra library Eigen 

building the SDK produces errors due to using C++14 features like smart pointers.

 I'm assuming DSP links are being built using the cl6x compiler which uses C++14 standard by default as stated here. 

https://www.ti.com/lit/ug/sprui04c/sprui04c.pdf

  • the Vission_SDK uses 

    ti-cgt-c6000_8.2 which only supports C++3. I've tried to update 
    CODEGEN_PATH_DSP in tools_path.mk to use the newer version of ti-cgt-c6000 which supports c++14 but the build currently produces these errors. 
    # Making tda2px-evm:c66xdsp_1:release:vision_sdk_lib...
    # Making tda2px-evm:c66xdsp_2:release:vision_sdk_lib...
    # Making tda2px-evm:arp32_1:release:vision_sdk_lib...
    # Making tda2px-evm:arp32_2:release:vision_sdk_lib...
    # Compiling generated MAIN_APP_c6xdsp1_pe66.oe66
    # Compiling generated MAIN_APP_c6xdsp2_pe66.oe66
    # Linking into /PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/vision_sdk/bin/tda2px-evm/vision_sdk_arp32_1_release.xearp32F...
    #
    # Linking into /PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/vision_sdk/bin/tda2px-evm/vision_sdk_arp32_2_release.xearp32F...
    #
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 38020: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 38389: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 38587: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 38801: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 39104: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 39286: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 39468: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 39667: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 39865: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 40078: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 40277: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 40488: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 40880: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 38020: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 38389: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 38587: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 42380: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 38801: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 39104: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 42879: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 39286: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 39468: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 43486: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 39667: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 43721: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 39865: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 43941: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 44122: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 40078: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 40277: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 40488: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 44729: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 40880: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 45165: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 45346: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 45527: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 42380: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 46246: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 46792: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 42879: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c", line 47043: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 43486: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 43721: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 43941: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 44122: error: statement is unreachable
    26 errors detected in the compilation of "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.c".
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 44729: error: statement is unreachable
    
    >> Compilation failure
    /PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/build/rtos/makerules/rules_66.mk:335: recipe for target '/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.oe66' failed
    make[7]: *** [/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_2/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp2_pe66.oe66] Error 1
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 45165: error: statement is unreachable
    /PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/build/rtos/makerules/common.mk:271: recipe for target 'c66xdsp_2' failed
    make[6]: *** [c66xdsp_2] Error 2
    MAKEFILE.MK:127: recipe for target 'apps_dsp2' failed
    make[5]: *** [apps_dsp2] Error 2
    make[5]: *** Waiting for unfinished jobs....
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 45346: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 45527: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 46246: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 46792: error: statement is unreachable
    "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c", line 47043: error: statement is unreachable
    26 errors detected in the compilation of "/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.c".
    
    >> Compilation failure
    /PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/build/rtos/makerules/rules_66.mk:335: recipe for target '/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.oe66' failed
    make[7]: *** [/PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/obj/vision_sdk/tda2px-evm/c66xdsp_1/release/vision_sdk_configuro/package/cfg/MAIN_APP_c6xdsp1_pe66.oe66] Error 1
    /PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/build/rtos/makerules/common.mk:271: recipe for target 'c66xdsp_1' failed
    make[6]: *** [c66xdsp_1] Error 2
    MAKEFILE.MK:116: recipe for target 'apps_dsp1' failed
    make[5]: *** [apps_dsp1] Error 2
    #
    #
    # /PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/vision_sdk/bin/tda2px-evm/vision_sdk_arp32_2_release.xearp32F created.
    #
    # /PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/vision_sdk/bin/tda2px-evm/vision_sdk_arp32_1_release.xearp32F created.
    #
    WARNING: The runtime version supported by this application is unavailable.
    Using default runtime: v4.0.30319
    WARNING: The runtime version supported by this application is unavailable.
    Using default runtime: v4.0.30319
    Parsing the input object file, /PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/vision_sdk/bin/tda2px-evm/vision_sdk_arp32_2_release.xearp32F.
    Parsing the input object file, /PROCESSOR_SDK_VISION_03_08_00_00/vision_sdk/binaries/apps/tda2px_linux_bios/vision_sdk/bin/tda2px-evm/vision_sdk_arp32_1_release.xearp32F.
    File conversion complete!
    File conversion complete!
    MAKEFILE.MK:31: recipe for target 'apps' failed
    make[4]: *** [apps] Error 2
    MAKEFILE.MK:318: recipe for target 'apps' failed
    make[3]: *** [apps] Error 2
    Makefile:175: recipe for target 'apps_exe' failed
    make[2]: *** [apps_exe] Error 2
    Makefile:38: recipe for target 'apps' failed
    make[1]: *** [apps] Error 2
    Makefile:12: recipe for target 'vision_sdk' failed
    make: *** [vision_sdk] Error 2
    
  • Our DSP code and libraries in SDK were compiled and validated with ti-cgt-c6000_8.2.

    I recommend you to build your DSP code as a library with the newer version DSP compiler.

    And do not recompile SDK code with newer version but the supported version from SDK.

    You can then link your library in SDK.

    Regards,
    Stanley