/holoscan-install-source
Build Holoscan SDK from source via the in-tree ./run script. Use only when published packages don't meet the user's needs.
$ npx -y skills add NVIDIA/skills --skill holoscan-install-source --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/holoscan-install-source
Context preview
The summary Claude sees to decide when to auto-load this skill.
Build Holoscan SDK from source via the in-tree ./run script. Use only when published packages don't meet the user's needs.
SKILL.md
holoscan-install-source.SKILL.mdname: holoscan-install-source
version: "1.0.0"
description: "Build Holoscan SDK from source via the in-tree ./run script. Use only when published packages don't meet the user's needs."
license: Apache-2.0
metadata:
author: "Holoscan Team <holoscan-team@nvidia.com>"
github-url: "https://github.com/nvidia-holoscan/holoscan-sdk"
tags:
- holoscan
- install
- source
- build
- cmakeHoloscan SDK — Build from Source
Purpose
Build the Holoscan SDK from the `nvidia-holoscan/holoscan-sdk` source tree using its `./run` script (which builds inside a Docker container), producing a local install tree consumable as a CMake dependency.
Prerequisites
- Linux host with NVIDIA GPU + driver (`nvidia-smi`).
- `git`, Docker with NVIDIA Container Toolkit (`docker run --gpus all` works), and `docker-buildx-plugin`.
- ~20 GB free disk for the build container + build/install trees.
- 10–30 min for a clean first build.
Limitations
- Only recommended when published packages (Conda / container / apt / wheel) don't fit — debug symbols, custom CMake options, or unsupported configs.
- Still requires Docker — the `./run` script builds inside a container; this is not a true bare-metal build.
- Cross-compiling to aarch64 needs `qemu-user-static` on the host.
Step 0: Consult the Official Install Instructions
Always fetch the "Build from Source" section of `https://docs.nvidia.com/holoscan/sdk-user-guide/sdk_installation.html` (and the linked GitHub `README.md` / `DEVELOP.md` for the chosen tag) before building. Extract: required `./run` flags for the target architecture and CUDA major, supported branches/tags, any Dockerfile patches called out for the release, and the test names recommended for verification. If the doc disagrees with anything below, the doc wins.
Step 1: Prerequisites
Check that git and Docker (with GPU passthrough) are available:
git --version
docker --version
docker run --rm --gpus all ubuntu:22.04 nvidia-smi
- If Docker is missing → help install from https://docs.docker.com/engine/install/
- If GPU passthrough fails → install NVIDIA Container Toolkit:
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list \
| sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' \
| sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update && sudo apt-get install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker && sudo systemctl restart docker- If Docker buildx is missing: `sudo apt-get install docker-buildx-plugin`
Step 2: Clone the Repository
Clone repo to ~/holoscan/holoscan-sdk if needed
mkdir -p ~/holoscan/
git clone https://github.com/nvidia-holoscan/holoscan-sdk.git
cd ~/holoscan/holoscan-sdk
To build a specific release tag (recommended for stability):
git tag | grep -E '^v[0-9]' | sort -V | tail -5 # list recent tags
git checkout v<VERSION> # e.g. v4.1.0
Step 3: Build
The `./run build` script handles container creation, CMake configuration, compilation, and install in one step. Warn the user this takes **10–30 minutes** on first run (downloads base image + compiles).
./run build
Common options:
| Flag | Purpose | |------|---------| | `--type debug` | Debug build (symbols, no optimization) | | `--type RelWithDebInfo` | Release + debug symbols | | `--arch aarch64` | Cross-compile for ARM64 (needs `sudo apt install qemu-user-static`) | | `--gpu igpu` | iGPU build for Jetson/IGX | | `--dryrun` | Preview commands without executing |
If CMake cache errors occur after changing options:
./run clear_cache && ./run build
Output lands in these folders, and can be retrieved with `./run get_build_dir` and `./run get_install_dir`
- Build dir: `build-cu<N>-<arch>/`
- Install dir: `install-cu<N>-<arch>/`.
Step 4: Run Tests
Run the following tests
- EXAMPLE_CPP_HELLO_WORLD_TEST
- EXAMPLE_PYTHON_HELLO_WORLD_TEST
- EXAMPLE_CPP_TENSOR_INTEROP_TEST
- EXAMPLE_PYTHON_TENSOR_INTEROP_TEST
- EXAMPLE_CPP_VIDEO_REPLAYER_TEST
- EXAMPLE_PYTHON_VIDEO_REPLAYER_TEST
./run test
To run all six required tests at once, use a single-quoted regex (the `|` must be quoted to prevent bash from treating it as a pipe):
./run test --options "-R 'EXAMPLE_CPP_HELLO_WORLD_TEST|EXAMPLE_PYTHON_HELLO_WORLD_TEST|EXAMPLE_CPP_TENSOR_INTEROP_TEST|EXAMPLE_PYTHON_TENSOR_INTEROP_TEST|EXAMPLE_CPP_VIDEO_REPLAYER_TEST|EXAMPLE_PYTHON_VIDEO_REPLAYER_TEST' --output-on-failure"
Run a specific test by name or regex:
./run test --name <test_name>
./run test --options "-R '<regex>' --output-on-failure"
./run test --verbose
**Important:** Always single-quote the regex string when it contains `|` — without quotes, bash interprets `|` as a pipe and the command fails with `command not found`.
Expected: all tests pass. Note any failures and report them to the user before continuing.
Step 5: Point Applications at the Install Tree
Once built, applications can use the install tree as a CMake dependency. Give the user this path:
/path/to/holoscan-sdk/install-cu<N>-<arch>/
They can set `Holoscan_ROOT` or `CMAKE_PREFIX_PATH` to this directory when building their own applications.
Troubleshooting
| Symptom | Fix | |---------|-----| | `bash: <TEST_NAME>: command not found` when running tests | The regex contains `\|` — wrap it in single quotes: `--options "-R '<regex>'"` | | CMake cache errors after option change | `./run clear_cache && ./run build` | | Docker buildx not found | `sudo apt-get install docker-buildx-plugin` | | GPU not visible inside build container | Verify NVIDIA Container Toolkit and re-run `sudo nvidia-ctk runtime con
Read more
name: holoscan-install-source
version: "1.0.0"
description: "Build Holoscan SDK from source via the in-tree ./run script. Use only when published packages don't meet the user's needs."
license: Apache-2.0
metadata:
author: "Holoscan Team <holoscan-team@nvidia.com>"
github-url: "https://github.com/nvidia-holoscan/holoscan-sdk"
tags:
- holoscan
- install
- source
- build
- cmakeHoloscan SDK — Build from Source
Purpose
Build the Holoscan SDK from the `nvidia-holoscan/holoscan-sdk` source tree using its `./run` script (which builds inside a Docker container), producing a local install tree consumable as a CMake dependency.
Prerequisites
- Linux host with NVIDIA GPU + driver (`nvidia-smi`).
- `git`, Docker with NVIDIA Container Toolkit (`docker run --gpus all` works), and `docker-buildx-plugin`.
- ~20 GB free disk for the build container + build/install trees.
- 10–30 min for a clean first build.
Limitations
- Only recommended when published packages (Conda / container / apt / wheel) don't fit — debug symbols, custom CMake options, or unsupported configs.
- Still requires Docker — the `./run` script builds inside a container; this is not a true bare-metal build.
- Cross-compiling to aarch64 needs `qemu-user-static` on the host.
Step 0: Consult the Official Install Instructions
Always fetch the "Build from Source" section of `https://docs.nvidia.com/holoscan/sdk-user-guide/sdk_installation.html` (and the linked GitHub `README.md` / `DEVELOP.md` for the chosen tag) before building. Extract: required `./run` flags for the target architecture and CUDA major, supported branches/tags, any Dockerfile patches called out for the release, and the test names recommended for verification. If the doc disagrees with anything below, the doc wins.
Step 1: Prerequisites
Check that git and Docker (with GPU passthrough) are available:
git --version docker --version docker run --rm --gpus all ubuntu:22.04 nvidia-smi
- If Docker is missing → help install from https://docs.docker.com/engine/install/
- If GPU passthrough fails → install NVIDIA Container Toolkit:
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list \
| sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' \
| sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update && sudo apt-get install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker && sudo systemctl restart docker- If Docker buildx is missing: `sudo apt-get install docker-buildx-plugin`
Step 2: Clone the Repository
Clone repo to ~/holoscan/holoscan-sdk if needed
mkdir -p ~/holoscan/ git clone https://github.com/nvidia-holoscan/holoscan-sdk.git cd ~/holoscan/holoscan-sdk
To build a specific release tag (recommended for stability):
git tag | grep -E '^v[0-9]' | sort -V | tail -5 # list recent tags git checkout v<VERSION> # e.g. v4.1.0
Step 3: Build
The `./run build` script handles container creation, CMake configuration, compilation, and install in one step. Warn the user this takes **10–30 minutes** on first run (downloads base image + compiles).
./run build
Common options:
| Flag | Purpose | |------|---------| | `--type debug` | Debug build (symbols, no optimization) | | `--type RelWithDebInfo` | Release + debug symbols | | `--arch aarch64` | Cross-compile for ARM64 (needs `sudo apt install qemu-user-static`) | | `--gpu igpu` | iGPU build for Jetson/IGX | | `--dryrun` | Preview commands without executing |
If CMake cache errors occur after changing options:
./run clear_cache && ./run build
Output lands in these folders, and can be retrieved with `./run get_build_dir` and `./run get_install_dir`
- Build dir: `build-cu<N>-<arch>/`
- Install dir: `install-cu<N>-<arch>/`.
Step 4: Run Tests
Run the following tests
- EXAMPLE_CPP_HELLO_WORLD_TEST
- EXAMPLE_PYTHON_HELLO_WORLD_TEST
- EXAMPLE_CPP_TENSOR_INTEROP_TEST
- EXAMPLE_PYTHON_TENSOR_INTEROP_TEST
- EXAMPLE_CPP_VIDEO_REPLAYER_TEST
- EXAMPLE_PYTHON_VIDEO_REPLAYER_TEST
./run test
To run all six required tests at once, use a single-quoted regex (the `|` must be quoted to prevent bash from treating it as a pipe):
./run test --options "-R 'EXAMPLE_CPP_HELLO_WORLD_TEST|EXAMPLE_PYTHON_HELLO_WORLD_TEST|EXAMPLE_CPP_TENSOR_INTEROP_TEST|EXAMPLE_PYTHON_TENSOR_INTEROP_TEST|EXAMPLE_CPP_VIDEO_REPLAYER_TEST|EXAMPLE_PYTHON_VIDEO_REPLAYER_TEST' --output-on-failure"
Run a specific test by name or regex:
./run test --name <test_name> ./run test --options "-R '<regex>' --output-on-failure" ./run test --verbose
**Important:** Always single-quote the regex string when it contains `|` — without quotes, bash interprets `|` as a pipe and the command fails with `command not found`.
Expected: all tests pass. Note any failures and report them to the user before continuing.
Step 5: Point Applications at the Install Tree
Once built, applications can use the install tree as a CMake dependency. Give the user this path:
/path/to/holoscan-sdk/install-cu<N>-<arch>/
They can set `Holoscan_ROOT` or `CMAKE_PREFIX_PATH` to this directory when building their own applications.
Troubleshooting
| Symptom | Fix | |---------|-----| | `bash: <TEST_NAME>: command not found` when running tests | The regex contains `\|` — wrap it in single quotes: `--options "-R '<regex>'"` | | CMake cache errors after option change | `./run clear_cache && ./run build` | | Docker buildx not found | `sudo apt-get install docker-buildx-plugin` | | GPU not visible inside build container | Verify NVIDIA Container Toolkit and re-run `sudo nvidia-ctk runtime con
Official, NVIDIA-verified Agent Skills for Claude Code, Codex, and other coding agents.
Other skills on nvidia-skills.
- /nvidia-skill-finder
Use for NVIDIA-related requests where an NVIDIA skill might help, even if the user did not ask for a skill. Trigger on NVIDIA products, hardware, software, SDKs, GPUs, Jetson/JetPack/L4T/BSP/SDK Manager/driver/flashing/setup, CUDA, NIM, NeMo, Omniverse/OpenUSD/SimReady,
Open skill - /accelerated-computing-cudf
Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby, CSV/Parquet I/O, nullable semantics, and multi-GPU DataFrame workloads.
Open skill - /aiq-deploy
Use when asked to install, deploy, run, validate, troubleshoot, or stop NVIDIA AI-Q Blueprint infrastructure.
Open skill - /aiq-research
Use when asked to run deep research or AI-Q research through a reachable NVIDIA AI-Q Blueprint backend.
Open skill - /amc-run-sample-calibration
Run end-to-end calibration on the shipped sample dataset (sdg_08_2_sample_data_010926.zip) against a running AMC microservice. Use when user says 'test sample dataset', 'run sample calibration', 'verify AMC install', or 'launch and test'.
Open skill - /amc-run-video-calibration
Calibrate a new dataset from pre-recorded video files via the AutoMagicCalib REST API. Use when user has local MP4s and says 'calibrate my videos', 'run AMC on these videos', or similar. For RTSP/live streams, use amc-run-rtsp-calibration instead.
Open skill

