Slackware This Forum is for the discussion of Slackware Linux.
|
Notices |
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.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
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.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
|
 |
05-19-2006, 11:28 AM
|
#1
|
Member
Registered: Apr 2005
Location: Havant, Hampshire, UK
Distribution: Slamd64, Slackware, PS2Linux
Posts: 465
Rep:
|
Can we discover if DESTDIR is supported before running make?
The subject should pretty much cover the entire question, but let me expand on it just a little for those wondering wth i'm talking about.
I was just in this thread here:
http://www.linuxquestions.org/questi...69#post2252769
And the last post (at the time, from zariweb) got me thinking. I didn't want to clutter up the thread, so I thought I'd start another =)
Quote:
Checkinstall is great for building packages for software that don't honor the DESTDIR in make but I really prefer building them manually when I can.
|
This is a very good point, and in contemplating the automation of this a little further (something like downloading the slackware build script for a package, building and then installing, or using checkinstall if the package wasn't in the slack repository) I wondered if it was possible to know in advance which software *didn't* honor the DESTDIR in make / make install ?
Is it merely a case of that if the software is using relatively new automake tools and the `./configure && make && make install procedure` that DESTDIR is supported, or is there something else about the process that can be used to determine (from a source directory, ./configure'd if necessary, raw ideally) if a slackbuild script will work for that package?
I hope that's clear - sorry for the somewhat obscure query - feel free to point me at any links I may have missed that will answer this question (I wasn't sure where to look, to be honest, my understanding of the automake process is flakey at best).
Many thanks,
- Piete.
|
|
|
05-19-2006, 12:27 PM
|
#2
|
Senior Member
Registered: Oct 2004
Posts: 1,272
Rep: 
|
Should normally have DESTDIR documented if it is supported, otherwise have a read of the makefile
|
|
|
05-19-2006, 12:49 PM
|
#3
|
Member
Registered: Mar 2005
Location: Right behind you.
Distribution: NBG, then randomed.
Posts: 480
Rep:
|
`grep DESTDIR Makefile`.
If it's there, it will usually work as expected. There are a lot of packages that are stupid about some things and will still try to make changes to your live filesystem. I strongly recommend using tee to log the output of the make install, and then go over it to make sure the Makefile wasn't doing anything dim-witted amongst all the scrolling.
|
|
|
05-19-2006, 03:05 PM
|
#4
|
Senior Member
Registered: Feb 2006
Location: Seattle, WA: USA
Distribution: Slackware 11.0
Posts: 1,191
Rep:
|
this is also sometimes implemented in the 'configure' script instead of the makefile such as in MPlayer. I would look at both to be sure.
regards,
...drkstr
|
|
|
05-19-2006, 03:18 PM
|
#5
|
Slackware Contributor
Registered: Sep 2005
Location: Eindhoven, The Netherlands
Distribution: Slackware
Posts: 8,559
|
Building a good package always means not assuming everything installs cleanly, even though you find traces of DESTDIR in the configure or Makefile scripts. Always use a method to see if files are installed outside of your package target directory - I use installwatch because it writes a clean log, but even so, examining the output from the "make install" stage is equally important.
I would never rely on checkinstall to produce packages. Checkinstall will not catch all installed files in all circumstances. It does a good job in many cases however. Writing a SlackBuild script means you have complete control, but it requires some manual effort.
Eric
|
|
|
05-19-2006, 04:09 PM
|
#6
|
Member
Registered: Apr 2005
Location: Havant, Hampshire, UK
Distribution: Slamd64, Slackware, PS2Linux
Posts: 465
Original Poster
Rep:
|
Thanks for all the responses. When a slackbuild is available, I generally use it in place of checkinstall. I've found checkinstall to be more than good enough for my lazy bones, was just wondering if there was any advance way of checking for DESTDIR support.
I have no desire to become any sort of package maintainer, I just like being able to uninstall things or grep /var/log/packages/ for things I have installed!
It looks to me as though the answer on the question is: "Sometimes." Which is what I expected. Many people implement destination directory on install in different ways and no automated procedure will catch them all, or be able to deal with the (potentially) infinite varieties of implementations.
So, many thanks to all who've taken the time to answer and think it over =)
- Piete.
|
|
|
All times are GMT -5. The time now is 04:43 AM.
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|