Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save jasongill/fef55cb769657bf36d0bb20ada742249 to your computer and use it in GitHub Desktop.
Save jasongill/fef55cb769657bf36d0bb20ada742249 to your computer and use it in GitHub Desktop.
Fixing the "libnvdla_compiler.so" on Jetson devices

If you, like me, just got a new Nvidia Jetson Orin Nano Super Developer Kit and are struggling to get the examples provided by Nvidia to run due to the following error:

ImportError: libnvdla_compiler.so: cannot open shared object file: No such file or directory

then you probably don't want to have to deal with downgrading the flashed version of things just to see if it will work. The issue is that the "libnvdla_compiler.so" file is not included in the latest (36.4.2) version of the Jetpack software which you're instructed to install to upgrade the firmware on the device.

The fix is to grab the file from the .deb file from the previous version. Running the following command will fix the issue:

wget -O - https://repo.download.nvidia.com/jetson/common/pool/main/n/nvidia-l4t-dla-compiler/nvidia-l4t-dla-compiler_36.4.1-20241119120551_arm64.deb | dpkg-deb --fsys-tarfile - | sudo tar xv --strip-components=5 --directory=/usr/lib/aarch64-linux-gnu/nvidia/ ./usr/lib/aarch64-linux-gnu/nvidia/libnvdla_compiler.so

This command will extract the required libnvdla_compiler.so file from the previous version's .deb file into the proper location in /usr/lib/aarch64-linux-gnu/nvidia/ No edits are required to the .csv files in /etc/nvidia-container-runtime/host-files-for-container.d/ - those already list the /usr/lib/aarch64-linux-gnu/nvidia/libnvdla_compiler.so path, but since it doesn't exist in 36.4.2 it can't be copied in to your Docker containers. By pulling the libnvdla_compiler.so in from the previous version, then re-running your docker or jetson-containers command, the library should be injected into the container and the error should go away.

@RaubCamaioni
Copy link

Was having troubles building l4t-torch container from jetson-containers because of missing libnvdla_compiler.so
Pulling the libnvdla_compiler.so from the deb fixed the issue.
Thanks for sharing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment