I have made a shared library libA.so to load dynamically into a process using the dlopen(). libA.so has also linked to other shared libraries libB.so and libC.so. So when I load the libA.so using dlopen() the dependent shared libraries libB.so and libC.so are also loaded into the process.
I can see the libraries libA.so ,libB.so and libC.so loaded into the process using the command cat /proc/PID/maps
During the unload of the libA.so using the dlclose() the library libA.so is unloaded from the process.But the libraries libB.so and libC.so is not unloaded from the process.
From the cat /proc/PID/maps, I can see libA.so is unloaded but libB.so and libC.so still exits.
How can I unload the dependent shared libraries libB.so and libC.so from the process?