Unable to compile dusty-nv/JetsonInference on Jetson Orin Nano

Issue Overview

Users are experiencing compilation errors when attempting to build the Jetson-Inference project on a Jetson Orin Nano 8 GB board. The specific error occurs during the linking process, with undefined references to ‘PvaProgramSetDMADescriptorsV2’ and ‘PvaProgramSetPointerValueEx’ in the libcupva_host.so.2.3 library. This issue prevents the successful compilation of the project, particularly affecting the imagenet executable.

The problem occurs on a system with the following specifications:

  • NVIDIA Orin Nano – AVerMedia D131
  • L4T 35.3.1 [JetPack UNKNOWN]
  • Ubuntu 20.04.6 LTS
  • Kernel Version: 5.10.104-tegra
  • CUDA 11.4.315
  • CUDA Architecture: 8.7
  • OpenCV version: 4.5.4 (without CUDA support)
  • CUDNN: 8.6.0.166
  • TensorRT: 8.5.2.2
  • VPI: 2.3.9

Possible Causes

  1. VPI (Vision Processing Interface) incompatibility: The error messages suggest that there might be an issue with the VPI library or its integration with the Jetson-Inference project.

  2. Library version mismatch: The undefined references could be due to a mismatch between the installed VPI version and the version expected by the Jetson-Inference project.

  3. Build configuration issues: The CMakeLists.txt file might not be correctly configured for the specific hardware and software versions on the Jetson Orin Nano.

  4. Incomplete or incorrect JetPack installation: The "JetPack UNKNOWN" status in the system information might indicate an incomplete or non-standard JetPack installation, potentially leading to missing or incompatible components.

Troubleshooting Steps, Solutions & Fixes

  1. Modify CMakeLists.txt:
    The solution provided by the project maintainer involves commenting out the VPI check in the CMakeLists.txt file. This workaround allows the build to proceed without VPI support.

    Open the file jetson-inference/CMakeLists.txt and locate the following section:

    # check for VPI (TODO: VPI 1.0 support for JetPack 4.x)
    find_package(VPI 2.0)
    
    if( NOT VPI_FOUND )
       message("-- didn't find VPI on system, disabling VPI")
    else()
       message("-- VPI version:  " ${VPI_VERSION})
       set(HAS_VPI 1)
       add_definitions(-DHAS_VPI)
    endif()
    

    Comment out these lines as follows:

    # check for VPI (TODO: VPI 1.0 support for JetPack 4.x)
    #find_package(VPI 2.0)
    #
    #if( NOT VPI_FOUND )
    #   message("-- didn't find VPI on system, disabling VPI")
    #else()
    #   message("-- VPI version:  " ${VPI_VERSION})
    #   set(HAS_VPI 1)
    #   add_definitions(-DHAS_VPI)
    #endif()
    
  2. Rebuild the project:
    After making the changes to CMakeLists.txt, attempt to rebuild the project:

    sudo make clean
    sudo make
    
  3. Check JetPack installation:
    Verify that JetPack is correctly installed on your Jetson Orin Nano. You may need to reinstall or update JetPack to ensure all necessary components are present and compatible.

  4. Update VPI:
    If the issue persists, try updating the VPI package to the latest version compatible with your system:

    sudo apt update
    sudo apt install vpi2-dev
    
  5. Check for system updates:
    Ensure your Jetson Orin Nano system is up to date:

    sudo apt update
    sudo apt upgrade
    
  6. Investigate library dependencies:
    If the problem continues, you may need to investigate the specific library dependencies. Use the ldd command to check the shared library dependencies of the problematic executable:

    ldd aarch64/bin/imagenet
    

    Look for any missing or incompatible libraries in the output.

  7. Consult project documentation:
    Review the Jetson-Inference project documentation and GitHub issues for any known compatibility issues or additional troubleshooting steps specific to the Jetson Orin Nano platform.

  8. Seek community support:
    If the issue remains unresolved, consider reaching out to the Jetson-Inference community through their GitHub issues page or NVIDIA’s developer forums for more specialized assistance.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *