holoscan-sdk icon indicating copy to clipboard operation
holoscan-sdk copied to clipboard

`run build` fails to fetch Vulkan SDK sources

Open tbirdso opened this issue 7 months ago • 0 comments

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

tbirdso avatar Jul 23 '24 14:07 tbirdso