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.

TDA2EXEVM: TDA2: Error of create an new use case

Part Number: TDA2EXEVM

hi,

I want to create a new use case ,and I get the same mistake  as had in https://e2e.ti.com/support/processors/f/791/t/690852?tisearch=e2e-sitesearch&keymatch=new%25252525252525252520use-case#pi320966filter=all&pi320966scroll=false

 I followed the user guide and declared the function in "vision_sdk/apps/src/include/chains.h" too, how can I deal with this problem?

Thanks

  • Hi Anyong,

    Have you done a clean build after declaring the function in chains.h.

    Can you describe what exactly you have done and the error message.

    Regards,

    Rishabh

  • hi Rishabh,

    I create a new use-case "tidl_OD_test" referring to "tidl_OD" use-case, and I follow the steps in "6.1 Adding new use-cases to build (BIOS ONLY mode) " of VisionSDK_UserGuide_BuildSystem.pdf,   "chains_tidlODtest" is the usecase entry point , this function is called in  chains_main_bios_tidl.c and also defined in chains.h, before building I have cleaned the build using "gmake -s clean " command. Then"gmake -s -j depend " and  "gmake -s -j ".  During the building , error occured as below:

    "D:/PROCESSOR_SDK_VISION_03_04_00_00/vision_sdk/apps/src/rtos/common/chains_main_bios_tidl.c", line 140: error: function "chains_tidlODtest" declared implicitly
    1 error detected in the compilation of "D:/PROCESSOR_SDK_VISION_03_04_00_00/vision_sdk/apps/src/rtos/common/chains_main_bios_tidl.c".
    >> Compilation failure

  • Hi,

    Can you share the updated chains.h and chains_main_bios_tidl.c as an attachment.

    Regards,

    Rishabh

  • hi Rishabh,

    Below files are the updated chains.h and chains_main_bios_tidl.c.

    Thanks

    chains.h

    /******************************************************************************
    Copyright (c) [2012 - 2017] Texas Instruments Incorporated
    
    All rights reserved not granted herein.
    
    Limited License.
    
     Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive
     license under copyrights and patents it now or hereafter owns or controls to
     make,  have made, use, import, offer to sell and sell ("Utilize") this software
     subject to the terms herein.  With respect to the foregoing patent license,
     such license is granted  solely to the extent that any such patent is necessary
     to Utilize the software alone.  The patent license shall not apply to any
     combinations which include this software, other than combinations with devices
     manufactured by or for TI ("TI Devices").  No hardware patent is licensed
     hereunder.
    
     Redistributions must preserve existing copyright notices and reproduce this
     license (including the above copyright notice and the disclaimer and
     (if applicable) source code license limitations below) in the documentation
     and/or other materials provided with the distribution
    
     Redistribution and use in binary form, without modification, are permitted
     provided that the following conditions are met:
    
     * No reverse engineering, decompilation, or disassembly of this software
       is permitted with respect to any software provided in binary form.
    
     * Any redistribution and use are licensed by TI for use only with TI Devices.
    
     * Nothing shall obligate TI to provide you with source code for the software
       licensed and provided to you in object code.
    
     If software source code is provided to you, modification and redistribution of
     the source code are permitted provided that the following conditions are met:
    
     * Any redistribution and use of the source code, including any resulting
       derivative works, are licensed by TI for use only with TI Devices.
    
     * Any redistribution and use of any object code compiled from the source code
       and any resulting derivative works, are licensed by TI for use only with TI
       Devices.
    
     Neither the name of Texas Instruments Incorporated nor the names of its
     suppliers may be used to endorse or promote products derived from this software
     without specific prior written permission.
    
     DISCLAIMER.
    
     THIS SOFTWARE IS PROVIDED BY TI AND TI�S LICENSORS "AS IS" AND ANY EXPRESS OR
     IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
     MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
     IN NO EVENT SHALL TI AND TI�S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT,
     INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
     LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
     PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
     LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
     OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
     ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    ******************************************************************************/
    
    /****************** *************************************************************
     *  INCLUDE FILES
     *******************************************************************************
     */
    #include <system_cfg.h>
    #include <src/include/chains.h>
    
    char gChains_menuTIDLUsecases[] = {
        "\r\n "
        "\r\n TIDL Usecases"
        "\r\n ---------------"
        #ifdef UC_tidl
        "\r\n 1: TIDL File I/O Usecase"
        #endif
        #ifdef UC_semSeg
        "\r\n 2: Semantic Segmentation Usecase"
        #endif
        #ifdef UC_tidl_OD
        "\r\n 3: TIDL OD Usecase"
        #endif
        #ifdef UC_tidl_OD_test
        "\r\n 4: tidl_OD_test Usecase"
        #endif
        "\r\n "
        "\r\n x: Exit "
        "\r\n "
        "\r\n Enter Choice: "
        "\r\n "
    };
    
    /**
     *******************************************************************************
     *
     * \brief   Function to select demo depending on user input
     *          Accepts user input as ch and switches to corrosponding usecase
     *
     * \param   ch        [IN]  Input choise for user
     *
     *******************************************************************************
    */
    
    Void Chains_menuTIDLRun()
    {
        char ch;
        Bool done = FALSE;
    
        while(!done)
        {
            Chains_statCollectorReset();
    
            Vps_printf(gChains_menuTIDLUsecases);
    
            ch = Chains_readChar();
            Vps_printf(" \r\n");
    
            switch(ch)
            {
                #ifdef UC_tidl
                case '1':
                    Chains_tidl(&gChains_usecaseCfg);
                break;
                #endif
    
                #ifdef UC_semSeg
                case '2':
                    Chains_semSeg(&gChains_usecaseCfg);
                    break;
                #endif
    
                #ifdef UC_tidl_OD
                case '3':
                    Chains_tidlOD(&gChains_usecaseCfg);					        
                    break;
                #endif
                
                #ifdef UC_tidl_OD_test
                case '4':
                    chains_tidlODtest(&gChains_usecaseCfg);
                    break;
                #endif      
                      
                case 'x':
                case 'X':
                    done = TRUE;
                    break;
    
                default:
                    Vps_printf(" Unsupported option '%c'. Please try again\n", ch);
                    break;
            }
        }
    }
    

  • Hi,

    The API declaration is "Chains_tidlODtest" and API call is "chains_tidlODtest", there is difference in case 'C' vs 'c'.

    Please update the call to "Chains_tidlODtest" and retry the build.

    Regards,

    Rishabh

  • hi Rishabh,

    I have built the application, and it's ok. Thank you very much for your quick reply. :)

    BR