Segmentation fault when loading deepstream dependencies

I finally managed to find a solution:

  • I make sure pyinstaller doesn’t include any gstreamer plugins in the binary by setting
        hooksconfig={
         "gstreamer": {
             "include_plugins": []
         }
     },
    
  • I no longer tell pyinstaller to add the binaries. So removing: binaries=[('/usr/lib/aarch64-linux-gnu/gstreamer-1.0/deepstream/*.so', '.')]
  • I manually copy over only the files needed by the jetson at runtime, which for my application was:
   cp /usr/lib/aarch64-linux-gnu/gstreamer-1.0/deepstream/*.so dis
   cp /opt/nvidia/deepstream/deepstream-6.2/lib/libnvds_meta.so
   cp /opt/nvidia/deepstream/deepstream-6.2/lib/libnvds_inferlogger.so
   cp /opt/nvidia/deepstream/deepstream-6.2/lib/libnvdsgst_helper.so
   cp /opt/nvidia/deepstream/deepstream-6.2/lib/libnvds_logger.so
   cp /opt/nvidia/deepstream/deepstream-6.2/lib/libnvds_infer.so
   cp /opt/nvidia/deepstream/deepstream-6.2/lib/libnvdsgst_inferbase.so
   cp /opt/nvidia/deepstream/deepstream-6.2/lib/libnvds_inferutils.so
   cp /opt/nvidia/deepstream/deepstream-6.2/lib/libnvdsgst_meta.so
   cp /opt/nvidia/deepstream/deepstream-6.2/lib/libnvdsgst_customhelper.so
   cp /usr/lib/aarch64-linux-gnu/libyaml-cpp.so.0.6

If i copy over all files in /opt/nvidia/deepstream/deepstream-6.2/lib I get the segmentation fault. So there must be some file in there that is causing it, but it turned out it is not needed to run the application.
Thank you for looking into it.

1 Like