Debug ELF and ABI
Identify the missing artifact and separate link-time, load-time, and symbol-version failures.
Workflow
- Record the exact error, distro/release, architecture, binary provenance, and whether it occurs while linking or running.
- If a local binary is available, inspect it without executing it using
file,readelf -h -d -s -V, andobjdump -Tas available. Do not uselddon untrusted binaries because some environments may execute loader behavior. - For a missing path or soname, call
query_file_provides; useget_packageto confirm target-release availability. - For version compatibility, call
compare_package_versionsandget_package_history. Distinguish library package version from exported symbol version. - Explain the required loader, soname, symbol and version node separately. Recommend rebuilding on an older compatible baseline, using a supported container, or installing a matching vendor package.
Guardrails
- Do not recommend replacing system
libc, the dynamic loader, or core libraries by copying random.sofiles. - Do not use
LD_LIBRARY_PATHas a universal fix; explain its process-wide risk. - Check architecture and libc family before comparing versions.
- Treat symbol ownership and first-version claims as evidence-dependent; say when PkgSeek lacks an indexed symbol fact.
Use https://api.pkgseek.com as a REST fallback only when PkgSeek MCP is unavailable.