"You have just found this great software on the Internet and off
you go to download and install it. It's all free and GPL and, as
luck would have it, the author provides a binary package in RPM
format. It doesn't take long to download it, then you run the
customary rpm -Uvh package-name.rpm command. OOPS! The installation
fails, reporting a missing dependent package without which it will
not install or function correctly. Off you go again to search the
Internet for the missing library.
"Unfortunately, installing that missing library fails because of
three other missing libraries and two other libraries that come in
incorrect versions. Depending on how badly you want the original
package, you have two choices - either go and search for all
missing dependent libraries as well as all libraries dependent on
the dependent libraries, or you just give up. How many times have
you given up?
"If you are persistent and lucky, you might eventually install
the RPM package. If you are persistent and not lucky, then you have
probably acquired a few bumps from banging your head against the
nearest wall in sheer desperation. RPM dependency hell can be a
hugely frustrating experience--anything from circular dependencies
(the catch 22 situation) to incorrect library version when there
wouldn't be much left untouched had you really persisted in getting
that badly wanted RPM installed..."