Main Question: Is jetpack 6.x on host OS backwards compatible for running jetpack 5.x docker?
We need to be running on ubuntu 20 to support ROS 1 for now. This means we have to have Jetpack 5 based docker image for ubuntu 20 source list etc. But when compiling roscpp modules that require cuda modules the required nvidia shared objects cannot be found.
/usr/lib/aarch64-linux-gnu/nvidia/libnvbufsurftransform.so.1.0.0
/usr/lib/aarch64-linux-gnu/nvidia/libnvsciipc.so
/usr/lib/aarch64-linux-gnu/nvidia/libnvos.so
/usr/lib/aarch64-linux-gnu/nvidia/libnvrm_gpu.so
Above or some of the files that ROS can’t find to link against.
trtexec
is also broken and throws the same linking errors with it not being able to find .so
files.
Based on jetpack 5.0.2 docs host and docker cuda are separate so these errors should no longer happen right?
All of this goes away when we match host and docker to be running on jetpack 6.
NOTE: we can’t run jetpack 5 on host and device because the camera drivers are only supported on jetpack 6. Our thinking is that host OS is responsible for device drivers so host docker mismatch should be fine for cameras.