plugin_dlopen_failed

Diagnostic `nanook::plugin::dlopen_failed`

Summary

dlopen of plugin `{0}` failed: {1}

Help

{2} is on disk but the dynamic linker rejected it; common causes are a wrong target triple, an unresolved transitive dependency, or a missing/renamed exported symbol the loader expected

Details

When this fires

PluginHost::open_plugin called libloading::Library::new(path) and the dynamic linker refused the file. The cdylib exists on disk (otherwise you'd hit not_found first) but dlopen returned an error. Common causes: the .so was built for a different target triple, a transitive dlopen-ed dep is missing, glibc is too old/new, or the file is truncated.

What to check

  • Rebuild for the host's target: cargo build --target x86_64-unknown-linux-gnu (or whatever uname -m says).
  • ldd <path> (Linux) or otool -L <path> (macOS) and resolve any "not found" lines.
  • A plugin built on a newer distro won't load on an older one.