LinuxQuestions.org
Visit Jeremy's Blog.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 04-24-2006, 01:45 AM   #1
Badut
LQ Newbie
 
Registered: Apr 2004
Posts: 16

Rep: Reputation: 0
Package management


Hi all, I understand Slackware package management does not provide dependency checking. I'm just a newbie trying to understand so bear with me.

What if I want to install package xyz?
And xyz depends on abc and def.
And def depends on ghi?

As someone who has never installed xyz before, how would I know this? Are you just expected to research the packages you install so you know its dependencies?

There has to be an easier way right?
 
Old 04-24-2006, 01:52 AM   #2
Randux
Senior Member
 
Registered: Feb 2006
Location: Siberia
Distribution: Slackware & Slamd64. What else is there?
Posts: 1,705

Rep: Reputation: 55
Pat (the Slackware owner) includes some notes on the packages he supplies in the installation set. Most of the time it's easy to figure out what the dependencies are from these notes, or from runtime errors.

When you build software from source, the devs (if they are worthy of the name) are supposed to tell you what the dependencies are.

While it's not unusual to have a problem or two at the beginning when building a new app or installing a new package, it is very rare not to be able to figure out what you're missing. After you install some common base libraries (many of which are included in the Slackware installation set) you won't trip over a missing library very often. When it happens, you get an error message, you go find the library, build it, and everything works. It can't be unmanageable, or nobody would be running Slackware or other similar distros.

The system isn't perfect, but for the Slackers, it's what we prefer. I would rather have the understanding of what I need on my system, and who needs it, than to have a bunch of stuff that might be needed. If you prefer control and a lean system, Slackware is a great basis. If you prefer plug and play linux, then Debian stable is a very good choice, with many packages and all of the dependencies managed without you having to think about it.

The Slackware dev and user community overcompensates for any conceivable perceived shortcoming in the distro. The knowledge and helpfulness of these guys is outstanding. It will be difficult to find a linux distro with a more loyal and enthusiastic user base.

As you will find in so many posts on package management, distro choice, etc. the great thing about linux is the huge number of choices available. There are systems for servers, desktops, and dev machines. There are distros which will suit most any preference.

Last edited by Randux; 04-24-2006 at 02:26 AM.
 
Old 04-24-2006, 02:26 AM   #3
cs-cam
Senior Member
 
Registered: May 2004
Location: Australia
Distribution: Gentoo
Posts: 3,545

Rep: Reputation: 57
There are 3rd party package managers available for Slackware that do handle deps etc. Google for swaret and slapt-get.
 
Old 04-24-2006, 02:32 AM   #4
introuble
Member
 
Registered: Apr 2004
Distribution: Debian -unstable
Posts: 700

Rep: Reputation: 31
Quote:
What if I want to install package xyz?
And xyz depends on abc and def.
And def depends on ghi?

This is what will usually happen: you'll fetch the source for "xyz", extract it (i.e.: tar xzvf xyz.tar.gz); cd to the extracted source dir (cd xyz/). Read "INSTALL" to see how to install the software on your system. The path is usually this:

Run "configure" in the source dir:

Code:
$ ./configure
At this point, if you don't have "abc" and/or "def" installed, configure will complain about missing dependencies, and "./configure" will fail. What you have to do now is fetch the source for "abc" and/or "def". Extrace the two sources. CD in the "abc" source dir, ./configure (apparently this should work). Once the ./configure script has finnished, you run "make" in the src dir. After that, you can use a tool like checkinstall to build a slackware package. So we run checkinstall in the abc source dir. and installpkg the newly created package. Now it's time to install "def". You go to the "def" source dir, ./configure .. if "ghi" isn't installed, configure will complain. So you have to get the ghi source, ./configure; make; checkinstall; installpkg. Now go back to "def" and run ./configure again. Since "ghi" is installed, this time ./configure will be successful, so you can continue to : make; checkinstall; installpkg. Good. Now both "abc" and "def" are installed. So you go back to the "xyz" source dir, ./configure; make; checkinstall and installpkg. All done.

Isn't all *that* hard, is it ?
 
Old 04-24-2006, 02:34 AM   #5
introuble
Member
 
Registered: Apr 2004
Distribution: Debian -unstable
Posts: 700

Rep: Reputation: 31
this is to avoid a dupe.

Last edited by introuble; 04-24-2006 at 02:36 AM.
 
Old 04-24-2006, 06:25 PM   #6
Badut
LQ Newbie
 
Registered: Apr 2004
Posts: 16

Original Poster
Rep: Reputation: 0
Quote:
Originally Posted by introuble
This is what will usually happen: you'll fetch the source for "xyz", extract it (i.e.: tar xzvf xyz.tar.gz); cd to the extracted source dir (cd xyz/). Read "INSTALL" to see how to install the software on your system. The path is usually this:

Run "configure" in the source dir:

Code:
$ ./configure
At this point, if you don't have "abc" and/or "def" installed, configure will complain about missing dependencies, and "./configure" will fail. What you have to do now is fetch the source for "abc" and/or "def". Extrace the two sources. CD in the "abc" source dir, ./configure (apparently this should work). Once the ./configure script has finnished, you run "make" in the src dir. After that, you can use a tool like checkinstall to build a slackware package. So we run checkinstall in the abc source dir. and installpkg the newly created package. Now it's time to install "def". You go to the "def" source dir, ./configure .. if "ghi" isn't installed, configure will complain. So you have to get the ghi source, ./configure; make; checkinstall; installpkg. Now go back to "def" and run ./configure again. Since "ghi" is installed, this time ./configure will be successful, so you can continue to : make; checkinstall; installpkg. Good. Now both "abc" and "def" are installed. So you go back to the "xyz" source dir, ./configure; make; checkinstall and installpkg. All done.

Isn't all *that* hard, is it ?
That's exactly what I imagined it would be like. It is not "hard" as in difficult - though it might take a bit of getting used to.
I do believe that there are probably a handful of common libraries that most packages need. Once you got those, you will run into less dependency issues.

Quote:
The system isn't perfect, but for the Slackers, it's what we prefer.
I've heard this said before and I respect that. Out of curiousity, what is the advantage of package management "Slackware" style over say something like Yum?
 
Old 04-24-2006, 06:29 PM   #7
zytsef
Member
 
Registered: Apr 2006
Location: Vancouver, Canada
Distribution: Slackware, Ubuntu
Posts: 168

Rep: Reputation: 30
Quote:
Originally Posted by Badut
Out of curiousity, what is the advantage of package management "Slackware" style over say something like Yum?
There isn't really an advantage. A lot of slackers like to think that knowing exactly which programs are using which libraries and so forth is superior. I just think resolving dependencies on my own makes me feel 1337
 
Old 04-24-2006, 08:08 PM   #8
Badut
LQ Newbie
 
Registered: Apr 2004
Posts: 16

Original Poster
Rep: Reputation: 0
Quote:
Originally Posted by zytsef
There isn't really an advantage. A lot of slackers like to think that knowing exactly which programs are using which libraries and so forth is superior. I just think resolving dependencies on my own makes me feel 1337
Then that is the advantage from your point of view

Maybe Slackware is for me. Still deciding between Slack and Gentoo.

Any idea when Slackware 11 will be made available for download?
 
Old 04-25-2006, 09:41 PM   #9
MS3FGX
LQ Guru
 
Registered: Jan 2004
Location: NJ, USA
Distribution: Slackware, Debian
Posts: 5,852

Rep: Reputation: 361Reputation: 361Reputation: 361Reputation: 361
There isn't really an advantage. A lot of slackers like to think that knowing exactly which programs are using which libraries and so forth is superior.

How about avoiding the absurd bloat that comes with using precompiled binaries and automatic dependencies?
 
Old 04-25-2006, 10:26 PM   #10
zytsef
Member
 
Registered: Apr 2006
Location: Vancouver, Canada
Distribution: Slackware, Ubuntu
Posts: 168

Rep: Reputation: 30
Quote:
Originally Posted by MS3FGX
How about avoiding the absurd bloat that comes with using precompiled binaries and automatic dependencies?
With the majority of programs I don't notice a difference between precompiled binaries and things I compile myself. Simple apps for simple apes, I guess.

I do know a thing or two about the sheer amount of stuff that can accumulate due to dependencies, but I don't think that's necissarily a problem with systems that resolve them for you. Try compiling a java webapp to run on a Tomcat server sometime. Even a slackware system will accumulate a ton of stuff to get most of them running.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
package management spx2 VectorLinux 4 02-07-2006 10:47 AM
Using Package Archive style package management mugwump84 Linux From Scratch 3 08-25-2005 05:19 PM
Package Management longnam Slackware 2 03-23-2005 03:42 PM
Package management? darkRoom Linux From Scratch 9 06-04-2004 10:00 AM
Package management Ultimaterra2005 Red Hat 1 02-22-2004 12:02 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 12:21 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration