What problem does it solve?
This Skill demystifies the complexities of dynamic linking on Linux, helping you resolve library loading errors, optimize search paths, and manage symbol visibility effectively.
Core Features & Use Cases
- Troubleshoot Library Loading: Diagnose and fix "cannot open shared object file" errors.
- Configure Search Paths: Understand and set RPATH, RUNPATH, and LD_LIBRARY_PATH.
- Manage Versioning: Implement soname versioning for shared libraries.
- Plugin Systems: Utilize
dlopen and dlsym for dynamic plugin architectures.
- Interposition: Use
LD_PRELOAD for debugging and overriding symbols.
- Symbol Visibility: Control which symbols are exported from shared libraries.
- Use Case: You've built a shared library but your application can't find it at runtime. This Skill guides you through setting the correct RPATH or ensuring the library is in the system's search path.
Quick Start
Use the dynamic-linking skill to debug why your application cannot find the shared library 'libexample.so'.