SlackwareThis Forum is for the discussion of Slackware Linux.
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Introduction to Linux - A Hands on Guide
This guide was created as an overview of the Linux Operating System, geared toward new users as an exploration tour and getting started guide, with exercises at the end of each chapter.
For more advanced trainees it can be a desktop reference, and a collection of the base knowledge needed to proceed with system and network administration. This book contains many real life examples derived from the author's experience as a Linux system and network administrator, trainer and consultant. They hope these examples will help you to get a better understanding of the Linux system and that you feel encouraged to try out things on your own.
Click Here to receive this Complete Guide absolutely free.
Apparently many people in the Linux community think that a packager manager must by definition include dependency checking. Well, that simply isn't the case, as Slackware most certainly does not. This is not to say that Slackware packages don't have dependencies, but rather that its package manager doesn't check for them. Dependency management is left up to the sysadmin, and that's the way we like it.
The short answer is by reading. Most pieces of software will list their dependencies and the Slackware philosophy is that you go out and resolve them yourself. The main reason for this is that resolving dependencies can occaisionally bork your sytem and by resolving your own dependencies, the chances of that happening should go down.
That said, there are tools like Swaret, and maybe slapt-get, that will resolve dependencies.
In addition to reading as Hangdog suggested, when you build the packages (./configure), it will usually complain about libraries that are needed and missing. You can then simply work your way through installing any required packages. Even if you download compiled binaries, oftentimes when you try to start that program from the command line, you will see what it is complaining about.
Something I've always liked about Slackware is the large array of libraries that Pat ships. Most of the time the dependencies that those 'other' package managers are looking for are libraries. Just install as much as possible from the /l series and you'll have >90% of what you need for compiling your own packages. On the rare occasion I've been missing a dependency, it's only been one level deep. No multi-level dependency hell of the kind you'll run into with RPMs.
...That said, there are tools like Swaret, and maybe slapt-get, that will resolve dependencies.
Originally Posted by cwwilson721
That has to be qualified with 'may resolve dependencies'.
More important than the issue of resolving dependancies, swaret will identify dependency issues. That the deps aren't always resolved properly is bound to happen. At least many missing deps are pointed out and left to the sysadmin (you) to resolve.
Swaret uses a basic tool for checking dependencies, ldd. You can use it manually yourself, but it will take awhile.
The Dropline guys have a script floating around that makes using ldd to check deps very simple. It doesn't try to resolve deps, it just tells you when you are missing deps.
Note that there are two kinds of deps. One is a dependency on libraries. This usually breaks stuff. The other is more of an "external program" dependency. An example of this is k3b and vcdimager. If you have vcdimager installed, k3d can use it. k3b "depends" on vcdimager for certain functions. Without vcdimager, k3b still works, but it won't make VCDs. No crash, just no added functionality.
ldd can tell you about missing library dependencies, but you may still be left with the "external program" type of deps. For those, though, they usually don't matter unless you need to perform a certain function.
Also do not make the mistake of thinking that swaret is only an updating tool. You can use it to also help resolve deps on a less than full install.