[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [coldsync-hackers] Perl
On Thu, Mar 07, 2002 at 11:42:41AM -0800, Rob Bloodgood wrote:
> > On Thu, Mar 07, 2002 at 02:53:12PM -0500, Daniel Lemire wrote:
> > > I "made" coldsync from very latest version. However, somehow, coldsync
> > > installs ColdSync.pm and other files in
> > > /usr/local/lib/site_perl/5.6.0/ColdSync.pm
> > >
> > > This is wrong!
> >
> > Perl under Redhat is broken: it wants to put locally-installed
> > modules in /usr, instead of /usr/local . This violates a hidden
> > assumption in the ColdSync Makefiles: that the Perl stuff goes in a
> > subdirectory of ${PREFIX}.
>
> It's not broken, it's installed from a different point of view.
According to
http://www.redhat.com/docs/manuals/linux/RHL-7.2-Manual/ref-guide/s1-filesystem-fhs.html
The /usr/local Directory
The FHS says:
"The /usr/local hierarchy is for use by the system
administrator when installing software locally. It needs to be
safe from being overwritten when the system software is
updated.
IOW, AIUI, if it didn't come from the vendor, it goes in /usr/local.
> perl will happily tell you what its prefix is
>
> perl -MConfig -e 'print $Config{prefix}'
>
> which can be used on any configline.
That tells you where the Perl distribution is installed. You
want
sitearch
sitearchexp
installsitearch
sitelib
sitelibexp
installsitelib
which tell you where local additions go.
If anyone has a solution to suggest, I'm all ears, but here's
the scope of the problem:
- The ColdSync distribution really consists of two packages:
ColdSync, and the ColdSync Perl modules.
- When you 'make install', everything should go under
${PREFIX}. One approach to package management is to install
packages in their own subdirectories. Thus, if some package
'foopkg' allowed me to specify prefix=/opt/foopkg, and 'make
install' touched something outside of /opt/foopkg, I'd go
after the author with a blunt instrument.
- It is desirable to be able to install everything in a single
directory, so that it can then be tarred up and installed
someplace else.
- It is very desirable to configure with one value of
${PREFIX} and install with a different value. This allows
you to build with prefix=/opt/coldsync, but install in
/tmp/coldsync-dist . But wen you run
/tmp/coldsync-dist/bin/coldsync, it'll look for config files
in /opt/coldsync .
--
Andrew Arensburger This message *does* represent the
arensb@ooblick.com views of ooblick.com
Please continue the pettifoggery. I find it fascinating.
--
This message was sent through the coldsync-hackers mailing list. To remove
yourself from this mailing list, send a message to majordomo@thedotin.net
with the words "unsubscribe coldsync-hackers" in the message body. For more
information on Coldsync, send mail to coldsync-hackers-owner@thedotin.net.