I have an application a part of which uses shared libraries. These libraries are linked at compile time.
At Runtime the loader expects the shared object to be in the LD_LIBRARY_PATH
, if not found the entire application crashes with error "unable to load shared libraries".Note that there is no guarantee that client would be having the library, in that case I want the application to leave a suitable error message also the independent part should work correctly.
For this purpose I am using dlsym()
and dlopen()
to use the API in the shared library. The problem with this is if I have a lot of functions in the API, i have to access them Individually using dlsym()
and ptrs which in my case are leading to memory corruption and code crashes.
Are there any alternatives for this?