DLL Hell

A predicament in which multiple versions of a Dynamic Linked Library (dll) must be present in order to support multiple linking operations at run-time, couple with an incompletely managed system of defining their applicability by the various pieces of Application Software.

The term is actually specific to a certain dominant OS, the concept is broadly applicable.