Build failure on Jetson Thor (JetPack 7.1) with Holoscan SDK 3.5.1

I am attempting to build holoscan-sensor-bridge (version 2.3.1) on a Jetson Thor. The build fails at 48% with numerous errors in the RMM headers provided by the SDK. Specifically, async_resource_with and async_resource_ref are reported as “not a member of cuda::mr”. This occurs in audio_packetizer.cpp, linux_data_plane_op.cpp, and gui_renderer.cpp. It appears the CCCL/RMM headers in SDK 3.5.1 are incompatible with the HSB 2.3.1 build environment on the Blackwell toolchain.

With best regards,

build_err.txt (95.4 KB)

Phani.

HSB 2.5.0 is intended to be compatible with JetPack 7.1 and is tested with HSDK 3.9.

HSDK “3.5.1” is only available on the JetPack 7.0 jetson repos - How did you set up or get this configuration? The combination HSDK 3.5.1 & HSB 2.3.1 should be able to build though (at least on JetPack 7.0) and I don’t see the errors you posted when building. Can you provide the output of your cmake config step and output of cat /sys/class/dmi/id/bios_version?

I am following the installation procedure from [secure-link]docs[.]nvidia[.]com/jetson/agx-thor-devkit/user-guide/latest/quick_start[.]html

  1. During the processing of checking stable-diffusion-WebUI, I got some errors and suggested by Nvidia team ([secure-link]forums[.]developer[.]nvidia[.]com/t/facing-difficulty-in-installing-webui-related-things-in-jetson-agx-thor/355426/3) to use VLM WebUI

  2. Currently as our activity is still not about using webUI (stable diffusion or VLM), and we are just experimenting with Holoscan sensor bridge, I referred to [secure-link]docs[.]nvidia[.]com/holoscan/sensor-bridge/latest/setup.html#sd-tab-item-3 (for AGX Thor) and started the installation

  3. Current system details (for your reference/ crosscheck)
    a. Jetpack version
    jetsonthor@jetsonthor:~/holoscan-sensor-bridge/build$ apt show nvidia-jetpack
    Package: nvidia-jetpack
    Version: 7.0-b128
    Priority: standard
    Section: metapackages
    Maintainer: NVIDIA Corporation
    Installed-Size: 198 kB
    Depends: nvidia-jetpack-runtime (= 7.0-b128), nvidia-jetpack-dev (= 7.0-b128)
    Homepage: [link]developer[.]nvidia[.]com/jetson
    Download-Size: 29.0 kB
    APT-Manual-Installed: yes
    APT-Sources: [secure-link]repo[.]download[.]nvidia[.]com/jetson/common r38.2/main arm64 Packages
    Description: NVIDIA Jetpack Meta Package

N: There are 2 additional records. Please use the ‘-a’ switch to see them.
jetsonthor@jetsonthor:~/holoscan-sensor-bridge/build$

b. Holoscan SDK version
jetsonthor@jetsonthor:~/holoscan-sensor-bridge/build$ holoscan version
You are executing Holoscan CLI from: /home/jetsonthor/.local/bin

Holoscan SDK: 3.9.0
Holoscan CLI: 3.9.0
jetsonthor@jetsonthor:~/holoscan-sensor-bridge/build$

c. HSB Vesion
jetsonthor@jetsonthor:~/holoscan-sensor-bridge$ cat VERSION
2.3.1

d. CUDA Toolkit version
jetsonthor@jetsonthor:~/holoscan-sensor-bridge$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2025 NVIDIA Corporation
Built on Fri_Nov__7_07:24:07_PM_PST_2025
Cuda compilation tools, release 13.1, V13.1.80
Build cuda_13.1.r13.1/compiler.36836380_0
jetsonthor@jetsonthor:~/holoscan-sensor-bridge$

f. RMM Version/ CCCL not available (may be with jetpack 7.x and CUDA 13.x these are not relevant)

g. SMI
jetsonthor@jetsonthor:~/holoscan-sensor-bridge$ nvidia-smi
Thu Jan 8 14:18:53 2026
±----------------------------------------------------------------------------------------+
| NVIDIA-SMI 580.00 Driver Version: 580.00 CUDA Version: 13.0 |
±----------------------------------------±-----------------------±---------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA Thor Off | 00000000:01:00.0 Off | N/A |
| N/A N/A N/A N/A / N/A | Not Supported | 6% Default |
| | | Disabled |
±----------------------------------------±-----------------------±---------------------+

±----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| 0 N/A N/A 2545 G /usr/lib/xorg/Xorg 0MiB |
| 0 N/A N/A 3451 G /usr/bin/gnome-shell 0MiB |
| 0 N/A N/A 6057 G /usr/bin/gnome-text-editor 0MiB |
±----------------------------------------------------------------------------------------+
jetsonthor@jetsonthor:~/holoscan-sensor-bridge$

f. L4T version
jetsonthor@jetsonthor:~/holoscan-sensor-bridge$ cat /etc/nv_tegra_release

R38 (release), REVISION: 2.0, GCID: 41844464, BOARD: generic, EABI: aarch64, DATE: Fri Aug 22 00:55:42 UTC 2025

KERNEL_VARIANT: oot

TARGET_USERSPACE_LIB_DIR=nvidia
TARGET_USERSPACE_LIB_DIR_PATH=usr/lib/aarch64-linux-gnu/nvidia
INSTALL_TYPE=
jetsonthor@jetsonthor:~/holoscan-sensor-bridge$

g. Bios version
jetsonthor@jetsonthor:~/holoscan-sensor-bridge$ cat /sys/class/dmi/id/bios_version
38.2.0-gcid-41844464

  1. Also I see this link when I google about Holoscan Sensor Bridge for Nvidia Thor - [secure-link]docs[.]nvidia[.]com/holoscan/sensor-bridge/latest/setup.html#sd-tab-item-3. Which one is the correct one to follow?
    https://docs[.]nvidia[.]com/holoscan/sensor-bridge/latest/setup.html#sd-tab-item-3
    OR
    https://docs[.]nvidia[.]com/holoscan/sensor-bridge/latest/setup.html#sd-tab-item-3

  2. During CMAKE - I got an issue.
    jetsonthor@jetsonthor:~/holoscan-sensor-bridge$ mkdir -p build
    jetsonthor@jetsonthor:~/holoscan-sensor-bridge$ cd build/
    jetsonthor@jetsonthor:~/holoscan-sensor-bridge/build$ cmake -DCCCL_DIR:PATH=“/usr/local/cuda/targets/sbsa-linux/lib/cmake/cccl” -DHOLOLINK_BUILD_SIPL=1 ..
    – The CXX compiler identification is GNU 13.3.0
    – The CUDA compiler identification is NVIDIA 13.1.80
    – Detecting CXX compiler ABI info
    – Detecting CXX compiler ABI info - done
    – Check for working CXX compiler: /usr/bin/c++ - skipped
    – Detecting CXX compile features
    – Detecting CXX compile features - done
    – Detecting CUDA compiler ABI info
    – Detecting CUDA compiler ABI info - done
    – Check for working CUDA compiler: /usr/local/cuda/bin/nvcc - skipped
    – Detecting CUDA compile features
    – Detecting CUDA compile features - done
    – Found fmt: /opt/nvidia/holoscan/include
    CMake Error at CMakeLists.txt:54 (find_package):
    Could not find a configuration file for package “holoscan” that is
    compatible with requested version “3.6”.

The following configuration files were considered but not accepted:

/opt/nvidia/holoscan/lib/cmake/holoscan/holoscan-config.cmake, version: 3.5.1

Seems build script is looking for Holoscan SDK 3.6, but my system has 3.5.1 (I assume this is the, stable version for JetPack 7.1/Thor right now) so I checked out v2.3.1 for holoscan-sensor-bridge

  1. Now inside holoscan-sensor-bridge folder
    a. Indicating I am at 2.3.1 version
    jetsonthor@jetsonthor:~/holoscan-sensor-bridge$ git status
    HEAD detached at 2.3.1
    nothing to commit, working tree clean
    jetsonthor@jetsonthor:~/holoscan-sensor-bridge$

b. Now inside build directory
jetsonthor@jetsonthor:~/holoscan-sensor-bridge/build$ cmake -DCCCL_DIR:PATH=“/usr/local/cuda/targets/sbsa-linux/lib/cmake/cccl” -DHOLOLINK_BUILD_SIPL=1 ..
– The CXX compiler identification is GNU 13.3.0
– The CUDA compiler identification is NVIDIA 13.1.80
– Detecting CXX compiler ABI info
– Detecting CXX compiler ABI info - done
– Check for working CXX compiler: /usr/bin/c++ - skipped
– Detecting CXX compile features
– Detecting CXX compile features - done
– Detecting CUDA compiler ABI info
– Detecting CUDA compiler ABI info - done
– Check for working CUDA compiler: /usr/local/cuda/bin/nvcc - skipped
– Detecting CUDA compile features
– Detecting CUDA compile features - done
– Found CUDAToolkit: /usr/local/cuda/targets/sbsa-linux/include (found version “13.1.80”)
– Performing Test CMAKE_HAVE_LIBC_PTHREAD
– Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
– Found Threads: TRUE
– Found holoscan: /opt/nvidia/holoscan/lib/cmake/holoscan/holoscan-config.cmake (found suitable version “3.5.1”, minimum required is “3.3”)
– Finding CCCL components: Thrust;CUB;libcudacxx
– cccl_cmake_dir: /usr/local/cuda/targets/sbsa-linux/lib/cmake/cccl
– Found libcudacxx: /usr/local/cuda/targets/sbsa-linux/lib/cmake/libcudacxx/libcudacxx-config.cmake (found suitable version “3.1.2.0”, minimum required is “3.1.2.0”)
– Found Thrust: /usr/local/cuda/targets/sbsa-linux/lib/cmake/thrust/thrust-config.cmake (found suitable exact version “3.1.2.0”)
– Found CUB: /usr/local/cuda/targets/sbsa-linux/lib/cmake/cub/cub-config.cmake (found suitable version “3.1.2.0”, minimum required is “3.1.2.0”)
– Found CCCL: /usr/local/cuda/targets/sbsa-linux/lib/cmake/cccl/cccl-config.cmake (found version “3.1.2.0”)
– Found Python3: /usr/bin/python3 (found version “3.12.3”) found components: Interpreter Development Development.Module Development.Embed
– pybind11 v2.13.6
– Found PythonInterp: /usr/bin/python3 (found suitable version “3.12.3”, minimum required is “3.7”)
– Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython3.12.so
– Performing Test HAS_FLTO
– Performing Test HAS_FLTO - Success
CMake Warning (dev) at /usr/share/cmake-3.28/Modules/FetchContent.cmake:1331 (message):
The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
not set. The policy’s OLD behavior will be used. When using a URL
download, the timestamps of extracted files should preferably be that of
the time of extraction, otherwise code that depends on the extracted
contents might not be rebuilt if the URL changes. The OLD behavior
preserves the timestamps from the archive instead, but this is usually not
what you want. Update your project to the NEW behavior or specify the
DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
robustness issue.
Call Stack (most recent call first):
CMakeLists.txt:60 (FetchContent_Declare)
This warning is for project developers. Use -Wno-dev to suppress it.

– The C compiler identification is GNU 13.3.0
– Detecting C compiler ABI info
– Detecting C compiler ABI info - done
– Check for working C compiler: /usr/bin/cc - skipped
– Detecting C compile features
– Detecting C compile features - done
– Found Python: /usr/bin/python3 (found version “3.12.3”) found components: Interpreter
– Found ibverbs: /usr/lib/aarch64-linux-gnu/libibverbs.so
– [download 35% complete]
– [download 53% complete]
– [download 71% complete]
– [download 89% complete]
– [download 100% complete]
– Found CURL: /usr/lib/aarch64-linux-gnu/libcurl.so (found version “8.5.0”)
– Found OpenSSL: /usr/lib/aarch64-linux-gnu/libcrypto.so (found version “3.0.13”)
– Configuring done (12.9s)
– Generating done (0.1s)
– Build files have been written to: /home/jetsonthor/holoscan-sensor-bridge/build
jetsonthor@jetsonthor:~/holoscan-sensor-bridge/build$

c. Now building
[build log attached]
hsb_build_error_log.txt (92.8 KB)

You are running l4t v38.2, which is actually JP7.0 – JP7.1 has v38.4

I can now reproduce and this appears to be an issue with the combination of HSDK 3.5.1’s RMM and CUDA Toolkit 13.1. Both l4t JP 7.0 and 7.1 come with 13.0 and that is the version tested against.

I recommend removing CTK 13.1 with sudo apt-get remove --purge cuda-toolkit-13-1* as all remnants of 13.1 will have to be removed to recover. You might have to re- install/configure cuda-toolkit-13-0.

As for clarifying documentation links. For HSB 2.3.1 Thor Setup on Jetpack 7.0, see Thor host setup - NVIDIA Docs . For HSB 2.5.0 Thor setup see Host Setup - NVIDIA Docs .

Thanks for your email. Now I uninstalled/ removed holoscan and holoscan sensor bridge.

Following Thor host setup - NVIDIA Docs from the beginning.

During the CMAKE preparation stage
running command
cmake -DCCCL_DIR:PATH=“/usr/local/cuda/targets/sbsa-linux/lib/cmake/cccl” -DHOLOLINK_BUILD_SIPL=1 ..

says
jetsonthor@jetsonthor:~/holoscan-sensor-bridge/build$ cmake -DCCCL_DIR:PATH=“/usr/local/cuda/targets/sbsa-linux/lib/cmake/cccl” -DHOLOLINK_BUILD_SIPL=1 ..
– The CXX compiler identification is GNU 13.3.0
– The CUDA compiler identification is NVIDIA 13.0.48
– Detecting CXX compiler ABI info
– Detecting CXX compiler ABI info - done
– Check for working CXX compiler: /usr/bin/c++ - skipped
– Detecting CXX compile features
– Detecting CXX compile features - done
– Detecting CUDA compiler ABI info
– Detecting CUDA compiler ABI info - done
– Check for working CUDA compiler: /usr/local/cuda-13.0/bin/nvcc - skipped
– Detecting CUDA compile features
– Detecting CUDA compile features - done
– Found fmt: /opt/nvidia/holoscan/include
CMake Error at CMakeLists.txt:54 (find_package):
Could not find a configuration file for package “holoscan” that is
compatible with requested version “3.6”.

The following configuration files were considered but not accepted:

/opt/nvidia/holoscan/lib/cmake/holoscan/holoscan-config.cmake, version: 3.5.1

– Configuring incomplete, errors occurred!

Just googling/ reading about this seems
main branch (or whichever branch where I am currently on) of the holoscan-sensor-bridge repository is updated Holoscan SDK 3.6, but I have installed 3.5.1 to match my JetPack 7.0 environment.

Seems to target HSB 2.3.1, we need to switch to tag 2.3.1???

[
jetsonthor@jetsonthor:~/holoscan-sensor-bridge/build$ git branch

  • main

jetsonthor@jetsonthor:~/holoscan-sensor-bridge/build$ git tag
1.0.0
1.1.0
1.1.1
2.0.0
2.0.0-EA2
2.2.0
2.2.1
2.3.0
2.3.1
2.5.0
2.5.0-EA
2.5.0-EA2 [I assume main is referring to this branch]
jetsonthor@jetsonthor:~/holoscan-sensor-bridge/build$

]

Yes, switch to 2.3.1 if you stick with HSDK 3.5.1.

Thanks a lot - this resolved the build issue.