LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   Dependency resolution (https://www.linuxquestions.org/questions/slackware-14/dependency-resolution-4175698032/)

gustav3000 07-20-2021 03:42 PM

Dependency resolution
 
Hi guys! I want to know what's your preferred way to resolve dependencies. Is there a smarter way than slackpkg install dep_a, slackpkg install dep_b and slackpkg install pkg? How do you deal with manual dependency resolution? I heard about queuefiles and sbotool but I'm interested in how can I resolve dependencies with slackpkg+ in the smarter way than slackpkg install a, slackpkg install b and then finally slackpkg install package.

bassmadrigal 07-20-2021 04:04 PM

For regular Slackware packages, I've gone the lazy route for years and just done a full install. I used to pick and choose things, but HD space is plentiful and I value my time more and more as I get older.

For 3rd-party things like SBo (SlackBuilds.org), I use either slackrepo or sbopkg. slackrepo calcuates dependencies automatically, but I need to run in on a clean Slackware install. sbopkg does not calculate dependencies, but its companion app, sqg does. I run sqg -p $PRGNAM and then use sbopkg to build/install that queue.

solarfields 07-20-2021 04:05 PM

Quote:

Originally Posted by gustav3000 (Post 6268194)
how can I resolve dependencies with slackpkg+ in the smarter way than slackpkg install a, slackpkg install b and then finally slackpkg install package.

you can't

dugan 07-20-2021 05:34 PM

The official answer is "do a full install".

hitest 07-20-2021 05:44 PM

Quote:

Originally Posted by dugan (Post 6268238)
The official answer is "do a full install".

Yep. A full installation of Slackware works out of the box with all dependencies met.

gustav3000 07-21-2021 01:05 AM

What do you think about slackpkg templates? Is it a good way to organize dependencies?

ponce 07-21-2021 01:46 AM

Quote:

Originally Posted by gustav3000 (Post 6268325)
What do you think about slackpkg templates? Is it a good way to organize dependencies?

yes, they are.

here I use them extensively but manually solving dependencies is not a precise science, it's more a fix-things-as-you-move-along science, you have to deal with it as is not officially supported (Slackware is offered as a whole).

what I found helpful is to use the work that others have done already in this field, like the one of the Salix people (thanks guys!): they have a PACKAGES.TXT file where all the dependencies for a specific package are listed (there are even alternatives but be aware that you might encounter a few gotchas), and that came handy a few times here in preparing templates.

but if you want to avoid any issues and, most important, you expect people to give you support, just go with a full install like the others already suggested, it's the best choice.

veeall 07-24-2021 04:47 PM

Full install + sbotools or sboui for handling dependencies of packages from SBo.

Gordie 07-24-2021 09:00 PM

Since you are asking about slackpkg specifically and it cannot be used for 3rd party repositories of software then the official answer is do a full installation.

frankbell 07-24-2021 09:55 PM

I'm not running Slackware right now for reasons I've described elsewhere, but, normally, I would do a full install. When I wanted to add a new package not included in the full install, I would look first at slackbuilds.org and get it from there, installing dependencies as listed at that site before installing the desired package.

Back in the olden days, before SlackBuilds, I would look for the sources of a package I wanted, then compile from sources. When I ran make install and encountered errors, I would look for the dependency mentioned in the first error message (as subsequent errors likely resulted therefrom), resolve it, rinse and repeat.

Once I resolved all the errors, I had a new working application.

chrisretusn 07-25-2021 06:13 AM

I do a full install.

For third party, I rely on the source, SBo and trail and error.

I list the build requirements (in build order), the runtime requirements and the package(s) the SlackBuild is for (in reverse build order) in the SlackBuild header.

hazel 07-25-2021 06:59 AM

A quick way to pick up library dependencies is to ldd a program. It will print out the libraries it can't find. For non-library dependencies (probably a very small group), run the program in a terminal and see what message it gives when it crashes.


All times are GMT -5. The time now is 11:39 PM.