Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 13 May 2011 14:41:44 -0400 (EDT)
From:      vogelke+unix@pobox.com (Karl Vogel)
To:        freebsd-questions@freebsd.org
Subject:   Re: How do you "install" utility built using gnu toolchain?
Message-ID:  <20110513184144.989E8BE4D@kev.msw.wpafb.af.mil>
In-Reply-To: <4DCCC412.1010004@infracaninophile.co.uk> (message from Matthew Seaman on Fri, 13 May 2011 06:39:30 %2B0100)
References:  <fbac85782cdb.4dcc5f4b@shaw.ca> <4DCCC412.1010004@infracaninophile.co.uk>

next in thread | previous in thread | raw e-mail | index | archive | help
>> On 13/05/2011 05:29, Dale Scott wrote:

D> It's pretty general question, but is it typically standard procedure for
D> a utility building using the GNU tool chain to be able to install itself
D> into /usr/local/bin?

>> On Fri, 13 May 2011 06:39:30 +0100, 
>> Matthew Seaman <m.seaman@infracaninophile.co.uk> said:

M> 'gmake install' should put binaries into appropriate locations.  Make
M> sure that you specify /usr/local as the prefix when running configure.

   I usually do two builds:

     me% mkdir /tmp/local
     me% configure --prefix=/tmp/local ...whatever...
     me% gmake
     me% gmake -n install 2>&1 | grep -v /tmp/local

   shows if something's going to be installed elsewhere, but that's only
   happened to me once in a blue moon (typo in Makefile.in).

     root# gmake install
     me% cd /tmp/local
     me% ls -lR

   provides a list of exactly what'll be installed, with ownership and
   permissions, in case you ever want to know where a given file came from.

   The "clean", "realclean", and "distclean" targets can behave slightly
   differently, depending on who put the source together.  To make cleanup
   consistent, I make a TOC of the pristine directory before and after
   configuration/build:

     me% cd /path/to/source
     me% find . -print | sort | tail +2 > /tmp/BEFORE
        ... configure, build, test, install, whatever ...

     me% find . -print | sort | tail +2 > /tmp/AFTER
     me% comm -23 /tmp/AFTER /tmp/BEFORE > TARGETS
     me% rm /tmp/AFTER /tmp/BEFORE

   Running "xargs rm < TARGETS" (and/or "rmdir") gives me a pristine source
   directory.  Sure, you can just remove the whole thing and unpack a clean
   tarball, but this is easier if you have local patches or you'd like to
   keep part of the generated output, like the configuration stuff.

-- 
Karl Vogel                      I don't speak for the USAF or my company

No, I really can't recover any files from your thumb drive, even if you did
find it after it passed through your dog.      --actual IT support question



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110513184144.989E8BE4D>