Let's say we have a shared library libA that depends on another shared library libB. We build libA this way:
$ g++ -I/header/files/of/libB -lB libA.cpp -o libA.so
Symbols exported by libB are stored in the symbol table of the libA. But where is library name "libB.so" stored? Is it stored in the symbol table also? Can I see a respective library name for each undefined symbol of libA (for example using nm tool)?
If libA depends on libB, libC, libD I'd like to see something like this:
undefined_symbol_1 - libB.so
undefined_symbol_2 - libC.so
undefined_symbol_3 - libD.so
etc