Tool/software:
Dear Sir,
PSDK: ti-processor-sdk-rtos-j721e-evm-07_01_00_11
OS: 22.04
GCC/G++ : 13
I am trying to build BSP in PC Emulation mode, but facing issues listed below for your reference
BUILD_TARGET_MODE=no make -C /home/vyom/Emulator/bsp/vision_apps app_utils_iss Required system library libpng.so Required system library libz.so Linking /home/vyom/Emulator/bsp/tiovx/out/PC/x86_64/LINUX/debug/vx_conformance_tests_exe make[2]: Entering directory '/home/vyom/Emulator/bsp/vision_apps' SHELL=/bin/sh /usr/bin/ld: /home/vyom/Emulator/bsp/tidl_j7_01_03_00_11/ti_dl/lib/PC/dsp/algo/debug/libtidl_obj_algo.a(tidl_spatialAvgPool_ixX_c7x.obj): in function `int TIDL_spatialAvgPool_nxn_1x1_i16u_o16u_exec_c7x<9, __SE_TEMPLATE_v1_t>(void*, void const*, void*, TIDL_SpatialAvgPoolIxXOxXExecInArgs const*, TIDL_SpatialAvgPoolIxXOxXExecOutArgs*)': /opt/Jenkins_OUT/workspace/J7_TIDL_Child_3/c7x-mma-tidl/ti_dl/release/tidl_src_j7_01_03_00_11/ti_dl/algo/src/tidsp/c7x/tidl_spatialAvgPool_ixX_c7x.c:2441: undefined reference to `__shift_right_round(_c70_he_detail::vtype<unsigned long, 8ul>, _c70_he_detail::vtype<unsigned int, 8ul>)' /usr/bin/ld: /opt/Jenkins_OUT/workspace/J7_TIDL_Child_3/c7x-mma-tidl/ti_dl/release/tidl_src_j7_01_03_00_11/ti_dl/algo/src/tidsp/c7x/tidl_spatialAvgPool_ixX_c7x.c:2442: undefined reference to `__shift_right_round(_c70_he_detail::vtype<unsigned long, 8ul>, _c70_he_detail::vtype<unsigned int, 8ul>)' /usr/bin/ld: /home/vyom/Emulator/bsp/tidl_j7_01_03_00_11/ti_dl/lib/PC/dsp/algo/debug/libtidl_obj_algo.a(tidl_spatialAvgPool_ixX_c7x.obj): in function `int TIDL_spatialAvgPool_nxn_1x1_i16s_o16s_exec_c7x<9, __SE_TEMPLATE_v1_t>(void*, void const*, void*, TIDL_SpatialAvgPoolIxXOxXExecInArgs const*, TIDL_SpatialAvgPoolIxXOxXExecOutArgs*)': /opt/Jenkins_OUT/workspace/J7_TIDL_Child_3/c7x-mma-tidl/ti_dl/release/tidl_src_j7_01_03_00_11/ti_dl/algo/src/tidsp/c7x/tidl_spatialAvgPool_ixX_c7x.c:2939: undefined reference to `__shift_right_round(_c70_he_detail::vtype<long, 8ul>, _c70_he_detail::vtype<unsigned int, 8ul>)' /usr/bin/ld: /opt/Jenkins_OUT/workspace/J7_TIDL_Child_3/c7x-mma-tidl/ti_dl/release/tidl_src_j7_01_03_00_11/ti_dl/algo/src/tidsp/c7x/tidl_spatialAvgPool_ixX_c7x.c:2940: undefined reference to `__shift_right_round(_c70_he_detail::vtype<long, 8ul>, _c70_he_detail::vtype<unsigned int, 8ul>)' /usr/bin/ld: /home/vyom/Emulator/bsp/mmalib_01_03_00_06/lib/debug/libmmalib_x86_64.a(MMALIB_CNN_convolve_row_5x5stride2_ixX_ixX_oxX_exec_ci.o): in function `void MMALIB_UTIL_SE1BloadRegBload5x5stride2Kequal1<64u>(int, int, _c70_he_detail::vtype<unsigned char, 64ul>, _c70_he_detail::vtype<unsigned char, 64ul>)': /home/gtbldadm/nightlybuilds/mmalib/ti/mmalib/src/cnn_c7xmma/MMALIB_CNN_convolve_row_ixX_ixX_oxX/c71/../../../common/c71/MMALIB_UTIL_SE1BloadRegBload5x5stride2Kequal1.h:84: undefined reference to `__vgetb_vkd(_c70_he_detail::vtype<signed char, 64ul>, unsigned char)' /usr/bin/ld: /home/gtbldadm/nightlybuilds/mmalib/ti/mmalib/src/cnn_c7xmma/MMALIB_CNN_convolve_row_ixX_ixX_oxX/c71/../../../common/c71/MMALIB_UTIL_SE1BloadRegBload5x5stride2Kequal1.h:85: undefined reference to `__vgetb_vkd(_c70_he_detail::vtype<signed char, 64ul>, unsigned char)' /usr/bin/ld: /home/vyom/Emulator/bsp/mmalib_01_03_00_06/lib/debug/libmmalib_x86_64.a(MMALIB_CNN_convolve_row_5x5stride2_ixX_ixX_oxX_exec_ci.o): in function `void MMALIB_UTIL_SE0AloadSE1BloadRegBloadComputeC5x5stride2Kequal1<64u>(int, int, _c70_he_detail::vtype<unsigned char, 64ul>, _c70_he_detail::vtype<unsigned char, 64ul>)': /home/gtbldadm/nightlybuilds/mmalib/ti/mmalib/src/cnn_c7xmma/MMALIB_CNN_convolve_row_ixX_ixX_oxX/c71/../../../common/c71/MMALIB_UTIL_SE0AloadSE1BloadRegBloadComputeC5x5stride2.h:157: undefined reference to `__vgetb_vkd(_c70_he_detail::vtype<signed char, 64ul>, unsigned char)' /usr/bin/ld: /home/gtbldadm/nightlybuilds/mmalib/ti/mmalib/src/cnn_c7xmma/MMALIB_CNN_convolve_row_ixX_ixX_oxX/c71/../../../common/c71/MMALIB_UTIL_SE0AloadSE1BloadRegBloadComputeC5x5stride2.h:158: undefined reference to `__vgetb_vkd(_c70_he_detail::vtype<signed char, 64ul>, unsigned char)' /usr/bin/ld: /home/vyom/Emulator/bsp/mmalib_01_03_00_06/lib/debug/libmmalib_x86_64.a(MMALIB_CNN_convolve_row_5x5stride2_ixX_ixX_oxX_exec_ci.o): in function `void MMALIB_UTIL_SE0AloadSE1BloadRegBloadComputeCSA0Cstore5x5stride2Kequal1<64u>(int, int, _c70_he_detail::vtype<unsigned char, 64ul>, unsigned char*, _c70_he_detail::vtype<unsigned char, 64ul>)': /home/gtbldadm/nightlybuilds/mmalib/ti/mmalib/src/cnn_c7xmma/MMALIB_CNN_convolve_row_ixX_ixX_oxX/c71/../../../common/c71/MMALIB_UTIL_SE0AloadSE1BloadRegBloadComputeCSA0Cstore5x5stride2Kequal1.h:144: undefined reference to `__vgetb_vkd(_c70_he_detail::vtype<signed char, 64ul>, unsigned char)' /usr/bin/ld: /home/vyom/Emulator/bsp/mmalib_01_03_00_06/lib/debug/libmmalib_x86_64.a(MMALIB_CNN_convolve_row_5x5stride2_ixX_ixX_oxX_exec_ci.o):/home/gtbldadm/nightlybuilds/mmalib/ti/mmalib/src/cnn_c7xmma/MMALIB_CNN_convolve_row_ixX_ixX_oxX/c71/../../../common/c71/MMALIB_UTIL_SE0AloadSE1BloadRegBloadComputeCSA0Cstore5x5stride2Kequal1.h:145: more undefined references to `__vgetb_vkd(_c70_he_detail::vtype<signed char, 64ul>, unsigned char)' follow
Please let me know if it can be resolved.
I have also shared the config(/tidl_j7_01_03_00_11/makerules/) file content
# # Copyright (c) {2015 - 2020} 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. # # #Other Variables # TARGET_PLATFORM : Used to select the target platform. PC(Host emulation) or the TI device. # TARGET_CPU : Used select Particular TI compute core. This applicable in PC emulation # mode as well to select the Host emulation packages # TARGET_BUILD : used to select Debug or Release build # TIDL_BUILD_FOR_LOKI : Temporary flag. Will be removed once VLAB simulator matures. # # Example usages # 1. Build for C7x Target : gmake or gmake TARGET_PLATFORM=TI_DEVICE TARGET_CPU=C71 # 2. Build for C7x Host Emualtion : gmake TARGET_PLATFORM=PC TARGET_CPU=C71 # 3. Build for C66 Host Emualtion : gmake TARGET_PLATFORM=PC TARGET_CPU=C66 # 4. Build for C66 Target : gmake TARGET_PLATFORM=TI_DEVICE TARGET_CPU=C66 # 5. Build for C7x Target debug build : gmake TARGET_PLATFORM=TI_DEVICE TARGET_CPU=C71 TARGET_BUILD=debug # TIDL outputs files (trace files, output files) # to have platform prefix # Supported values: 0, 1 PREFIXED_OUTPUTS ?= 0 # Default TI_DEVELOPER_BUILD # Supported values: 0, 1 DEVELOPER_BUILD ?= 0 # Default TI_DEVICE # Supported values: PC, TI_DEVICE (SIMULATORS or EMULATOR ) #TARGET_PLATFORM ?= PC TARGET_PLATFORM ?= TI_DEVICE BUILD_WITH_CUDA ?= 0 TIDL_BUILD_WITH_AVX ?= 0 TIDL_BUILD_FOR_LOKI ?= 0 TIDL_HOST_CCS ?= 0 TIDL_BIOS_BUILD ?= 1 BUILD_LIDAR_PREPROC ?= 0 ifdef SystemRoot PSDK_INSTALL_PATH ?= C:\ti else PSDK_INSTALL_PATH ?= $(PWD)/../.. endif ifdef SystemRoot BIOS_PATH ?="$(PSDK_INSTALL_PATH)\bios_6_83_00_18" XDCTOOLS_PATH ?="$(PSDK_INSTALL_PATH)\xdctools_3_61_03_29_core" IVISION_PATH ?="$(PSDK_INSTALL_PATH)\ivision" UTILS_PATH ?="$(PSDK_INSTALL_PATH)\ccs910\ccs\utils\cygwin" TIDL_PROTOBUF_PATH ?="$(PSDK_INSTALL_PATH)\protobuf-3.5.1_msvc_2015_x64" TIDL_OPENCV_PATH ?=$(PSDK_INSTALL_PATH)\opencv_3.1.0_msvc_2015_x64\opencv\sources DSP_TOOLS ?=$(PSDK_INSTALL_PATH)\ti-cgt-c7000_1.4.0.LTS TIDL_FLATBUF_PATH ?=$(PSDK_INSTALL_PATH)\flatbuffers-1.12.0 MMALIB_PATH ?=$(PSDK_INSTALL_PATH)\mmalib_01_03_00_06 PDK_INSTALL_PATH ?=$(PSDK_INSTALL_PATH)\pdk\packages CONCERTO_ROOT ?=$(PSDK_INSTALL_PATH)\vision_apps\concerto TIOVX_PATH ?=$(PSDK_INSTALL_PATH)\tiovx VISION_APPS_PATH ?=$(PSDK_INSTALL_PATH)\vision_apps GCC_LINUX_ARM_ROOT ?=$(PSDK_INSTALL_PATH)\gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu TIDL_GRAPHVIZ_PATH ?="$(PSDK_INSTALL_PATH)\graphviz-2.38_x64" # Location of the CUDA Toolkit CUDA_PATH ?= "C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.0/" CUDNN_PATH ?= "D:/work/cuDNN/cudnn-9.0-v7.0/" else BIOS_PATH ?="$(PSDK_INSTALL_PATH)/bios_6_83_00_18" XDCTOOLS_PATH ?="$(PSDK_INSTALL_PATH)/xdctools_3_61_03_29_core" IVISION_PATH ?="$(PSDK_INSTALL_PATH)/ivision" DSP_TOOLS ?="$(PSDK_INSTALL_PATH)/ti-cgt-c7000_1.4.0.LTS" MMALIB_PATH ?="$(PSDK_INSTALL_PATH)/mmalib_01_03_00_06" PDK_INSTALL_PATH ?="$(PSDK_INSTALL_PATH)/pdk/packages" CONCERTO_ROOT ?=$(PSDK_INSTALL_PATH)/vision_apps/concerto TIOVX_PATH ?=$(PSDK_INSTALL_PATH)/tiovx VISION_APPS_PATH ?=$(PSDK_INSTALL_PATH)/vision_apps GCC_LINUX_ARM_ROOT ?=$(PSDK_INSTALL_PATH)/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu LINUX_FS_PATH ?=$(PSDK_INSTALL_PATH)/targetfs TF_REPO_PATH ?=$(PSDK_INSTALL_PATH)/tensorflow TVM_HOME ?=$(PSDK_INSTALL_PATH)/tvm # Below are only needed for PC emulation Test bench build TIDL_OPENCV_PATH ?="$(PSDK_INSTALL_PATH)/opencv-3.1.0" TIDL_PROTOBUF_PATH ?="$(PSDK_INSTALL_PATH)/protobuf-3.5.1" TIDL_FLATBUF_PATH ?="$(PSDK_INSTALL_PATH)/flatbuffers-1.12.0" TIDL_GRAPHVIZ_PATH ?="$(PSDK_INSTALL_PATH)/graphviz-2.40.1_install" # Location of the CUDA Toolkit CUDA_PATH ?= /usr/local/cuda endif SHOW_COMMANDS ?= 0 # Default platform # Supported values: J721E j721e j721s2 TARGET_SOC ?= j721e # Default CORE is dsp # Supported values: dsp, eve, arm CORE ?= dsp # Default RTOS is FREERTOS # Supported values: FREERTOS, SYSBIOS RTOS ?= FREERTOS # Default C66 # Supported C64T, C64P, C64, C66, C674, C67, C67P, m4 TARGET_CPU ?= C71 #C7x Version (C7120/C7100) #Compiles code for a particular C7x mode ifeq ($(TARGET_SOC),$(filter $(TARGET_SOC), J721E j721e)) TARGET_C7X_VERSION ?= C7100 else TARGET_C7X_VERSION ?= C7120 endif #Temporary flag to use older library paths #TIDL_BUILD_PATHS = LEGACY ifeq ($(CORE),eve) TARGET_CPU:= endif # Supported values: debug and release) TARGET_BUILD ?= release FINAL_RELEASE_BUILD ?= 1 ifeq ($(TARGET_PLATFORM) ,PC) BUILD_WITH_OPENCV ?= 1 BUILD_WITH_STATIC_ARRAYS ?= 0 COMPARE_SINGLE_LAYER ?= 0 USE_HOST_FILE_IO ?=0 USE_HOST_PRINTF ?=0 else BUILD_WITH_OPENCV ?= 0 BUILD_WITH_STATIC_ARRAYS ?= 0 COMPARE_SINGLE_LAYER ?= 0 ifeq ($(TIDL_BUILD_FOR_LOKI), 1) USE_HOST_FILE_IO ?=0 else USE_HOST_FILE_IO ?=1 endif USE_HOST_PRINTF ?=0 endif
Thanks and Regards,
Vyom Mishra