Object File referenced in wrong path

In an Isaac SDK project on Unbuntu 18.04, the application crashes when loading modules.A Jetson TX2 is the hardware being used.

The project builds without error when doing bazel build on the local machine and then is deployed to the robot without any issues. The issue is when running the application.

I get an error that states:

“2019-08-28 16:26:03.270 ERROR engine/alice/backend/modules.cpp@307: iam-devices:ms_comps: /home/iam/deploy/jake/localization_test-pkg//external/com_nvidia_isaac/packages/iam-devices/libms_comps_module.so: cannot open shared object file: No such file or directory”

I have added an image that verifies the existence of the module. First, the object libms_comps_module.so exist. Please see “” for verification. It is added to directory localization_test-pkg/packages/iam-devices.

Now looking at the error message above, when loading this module, the application looks in “/home/iam/deploy/jake/localization_test-pkg//external/com_nvidia_isaac/packages/iam-devices/”.

com_nvidia_isaac is not an actual directory under external. How is this possible, that a non-existent directory is being searched for this module?

Hello, are you running the latest version of the SDK?
I would recommend the latest version with all the documentation for the navigation stack over here: https://docs.nvidia.com/isaac/isaac/packages/navigation/index.html

I’m unsure what version of the SDK is being run on the robot currently. This was a project I picked up. I can check if we are allowed to update the customers SDK version on the Jetson 2 board.

Is this the only recommended fix? Was referencing the wrong file path a known bug from the previous SDK. I would assume there would be more to this. If I find what is going on, I will post the solution. For now I do have other applications running successfully on the machine, but this specific application when loading modules to start up the robot, has an issue finding this one file. I don’t specify the output path of my modules when writing the JSON, codelet, or build file. Only where to find the source files on my computer. Then I just deploy them to the robot. The object file for the module goes in the correct place based on where all the others are going.