Dependency hell
Dependency hell is what happens when software packages (applications, libraries, etc.) depend on different or incompatible versions of other software — and our system (or package manager) cannot find a way to satisfy all those requirements at once.
“Dependency hell” = when installing or updating one package breaks another because they depend on conflicting versions of the same dependency.
Every program we install may rely on libraries — shared pieces of code that perform common tasks.
For example:
A music player might depend on libmp3, libgtk, and libssl.
libmp3 might itself depend on libaudio version >=1.2.
These nested relationships form a dependency graph.
When these dependencies conflict, we get… hell.
This happened to me more than once.
* Version Conflicts
Two programs need different versions of the same library.
But our package manager can only install one version at a time.
→ We cannot have both A and B working simultaneously.
* Missing Dependencies
When a package needs a library that isn’t installed — or isn’t available in our configured repositories.
* Dependency Chains from Source Builds
When building software manually (e.g., from source with ./configure && make && make install), one missing or mismatched library can trigger a cascade of missing requirements.
Oh the joy, the happiness
This also effects our ability to run video games on Linux!
Enjoy #linux

Well, that was exciting. See you in the next one!