holoscan-sdk
holoscan-sdk copied to clipboard
`run build` fails to fetch Vulkan SDK sources
Overview
Building the Holoscan SDK container with run build
or directly from Dockerfile
fails to pull Vulkan SDK packages.
Details
Holoscan SDK v2.2 and earlier attempts to fetch Vulkan v1.23.216.0 sources directly from lunarg.com when creating the container with Holoscan SDK build dependencies. This step was necessary for early Holoscan SDK versions where Vulkan Debian packages were not available for download on arm64 platforms.
Vulkan v1.23.216.0 packages were removed from the lunarg.com download site on July 23rd, 2024. As a result, users attempting to build the Holoscan SDK build container will see an error when retrieving and unzipping the Vulkan SDK archive.
Who is Impacted
This issue impacts developers that are:
- attempting to build Holoscan SDK (or its build container) from source
- using a machine that did not previously cache layers from building the Holoscan SDK build container.
This issue does not impact developers that obtain Holoscan SDK via other binary distribution methods such as NGC.
Steps to Reproduce
cd holoscan-sdk
git checkout <my-tag>
./run build
Observed Behavior
=> ERROR [vulkansdk-builder 4/5] RUN tar -xzf vulkansdk-linux-x86_64-1.3.216.0.tar.gz 0.2s
------
> [vulkansdk-builder 4/5] RUN tar -xzf vulkansdk-linux-x86_64-1.3.216.0.tar.gz:
0.083
0.083 gzip: stdin: not in gzip format
0.084 tar: Child returned status 1
0.084 tar: Error is not recoverable: exiting now
Platform Information:
- Holoscan SDK Version 2.2.0 and earlier
- Architecture: x86_64, arm64
- OS: Ubuntu, IGX SW OS
Workaround
Developers can download and apply the attached patch file to their Holoscan SDK source tree. The patch will update the Holoscan SDK Dockerfile to install Vulkan SDK 1.3.204 from Debian packages and update APIs accordingly.
~holoscan_sdk_20240723.txt~ ~SHA256: 9022f9adf8b3d524ffaf18e520439f959458e7b29660668cfe81a9c0cb8363a1~
The updated patch provided below can be applied directly to the Holoscan SDK v2.2.0 source code. Please also clear your Holoscan SDK CMake build cache before rebuilding.
holoscan_sdk_20240723_1.txt SHA256: ad6c4388f7e747da944b141527a20e4bacf5d191735b7348a56029fb75873b6d
git checkout v2.2.0
git apply holoscan_sdk_20240723_1.txt
./run clear_cache