justlinux.com
Sun, 27-May-2012 11:39:37 GMT

Forum: Registered Users: 76222, Online: 301
nhfs Here you can view your subscribed threads, work with private messages and edit your profile and preferences Registration is free! Calendar Find other members Frequently Asked Questions Search Home Home

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