Help File Library: RPMs: Dependencies
Written By:
Evil Jeff
RPMs are the standard package for Red Hat based systems. Because Red Hat
is so popular, it has become a sort of industry standard in package
management. However, rpms can be very moody since they don't
automatically handle dependencies for you.
What is a dependency? One of the things that make *nix based systems so
fast and powerful is the fact that programs share libraries. Libraries
are sets of commands that many different programs will use in order to
save space and memory on your system. You probably would recognize some
of the more popular ones from when you first installed linux - gtk, qt,
glibc, svga... the list goes on and on. Libraries are great, until you
try and install an rpm and you get an error claiming that you are missing
a file from one or more of them.
The problem is that rpm front ends do not tell you what other rpm
packages you need to satisfy these dependencies. They only tell you what
exact files you need before it will install correctly. So before you go
looking at your distribution's site for foo.x.x.so.1 or whatever, here is
a good way to find out what rpm package you need.
Go to a package search site like www.rpmfind.org or www.sourceforge.com. Use their
search engine to find the exact file that you are missing, and hopefully
it will come up with an rpm package that includes your file. However, your
search is not over yet! Many rpm packages are distribution specific.
While some will work on multiple distributions, some are compiled for
older/newer versions of rpm, older/newer sets of other libraries that
these libraries depend on in order to function correctly.
So a good idea would be to go to your distribution's web site and find
their download page/ftp site. From there, navigate into the main rpm
folder and find a package with the same name, but for your distribution.
Some will have alternate directories for i386, i586, etc. for different
architectures. Try and find the one that fits your processor for optimum
performance. Once you find it, download and install (and pray that there
are no unsatisfied dependencies for this package!). Then, you're lucky,
you'll be able to install the original rpm.
Best regards, Evil Jeff