An application links against two different shared libraries which each locally define and reference the same symbol (same at link time; e.g. after mangling)...
At run time, the code from one of the libraries ends up using the symbol definition from the other.
The obvious solution would be to rename one of the symbols, but these are third-party libraries and this would be difficult.
Is there any way to force the linker to resolve symbols preferentially within the library that is being dynamically linked?