Please provide complete information as applicable to your setup.
Currently my deepstream application is compatible with multiple DS versions(6.1.0, 6.01 and 5.0.0). It runs successfully on below three Jetson devices with following specifications.
Device 1:
Jetpack Version: 5.0.2-b231
DS Version: 6.1.0
TensorRT Version: 8.4.1
Cuda Version : 11.4
Device 2:
Jetpack Version: 4.6-b197
DS Version: 6.0.1
TensorRT Version: 8.2.1
Cuda Version: 10.2
Device 3:
Jetpack Version: 4.4-b186
DS Version: 5.0.0
TensorRT Version: 8.2.1
Cuda Version : 10.2
I would like to containerize my application with in a docker ( for example say build the nvidia docker with DS 6.1) and run it across multiple devices. In doing so I face following issues.
-
When I use the docker that was built on Device 1, to run the application on Device 3 I get the following error
(gst-plugin-scanner:10): GStreamer-WARNING **: 01:15:50.274: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_deepstream_bins.so': libnvmedia_tensor.so: cannot open shared object file: No such file or directory -
When I try to run the
nvcr.io/nvidia/deepstream-l4t:6.0-sampleson Device 1. I see following error.root@automotus:/opt/nvidia/deepstream/deepstream-6.0# deepstream-app -v deepstream-app: error while loading shared libraries: libnvinfer.so.8: cannot open shared object file: No such file or directorylibnvinfer.so.8is located at/usr/lib/aarch64-linux-gnu/on host system( Device 1) and not present in the docker `nvcr.io/nvidia/deepstream-l4t:6.0-samples
I tried copying those missing libraries to the docker during runtime in both scenarios. It was not working. Is there any approach to containerize the application to run on multiple Jetson devices with different Jetpack and DS versions ?