On 4/9/07, Bill Moseley <[EMAIL PROTECTED]> wrote:

I'm currently replicating an automated install of Catalyst against a
fresh 5.8.8. Interestingly, I saw one interesting failure. Catalyst
has oodles of dependencies. At some point during the installation of a
sub-sub-sub-* dependency, CPAN.pm deleted its downloaded copy of
something it was still in the process of installing. I guess CPAN's
build caching mechanism doesn't take into account things in the cache
that it still cares about. Ooops!

Catalyst installed without any other error. Template ignores my
settings when it comes to that /usr/local/tt2 stuff. It doesn't
succeed when there's no STDIN to ask me questions about the install.
Dang. If you read the Makefile.PL, you'll see that you need to specify
some PL args like TT_PREFIX which is *different* than any other
option. Oh well.

Here's my "ultra simple" setup.

PERL5LIB is set to ~/.perl/lib. Period. I don't do that arch/version
stuff because I don't see a reason to.

CPAN/Config.pm (or ~/.cpan/CPAN/Myconfig.pm if you prefer) has its
makepl_arg fully specified. *every* lib directory is specified and
pegged to ~/.perl/lib. I like being nice to myself so all the scripts
and binaries are installed to ~/bin.

 'makepl_arg' => q[INSTALLARCHLIB=/home/josh/.perl/lib
INSTALLBIN=/home/josh/bin INSTALLMAN1DIR=/home/josh/.perl/man/man1
INSTALLMAN3DIR=/home/josh/.perl/man/man3
INSTALLPRIVLIB=/home/josh/.perl/lib INSTALLSCRIPT=/home/josh/bin
INSTALLSITEARCH=/home/josh/.perl/lib INSTALLSITEBIN=/home/josh/bin
INSTALLSITELIB=/home/josh/.perl/lib
INSTALLSITEMAN1DIR=/home/josh/.perl/man/man1
INSTALLSITEMAN3DIR=/home/josh/.perl/man/man3
INSTALLVENDORARCH=/home/josh/.perl/lib INSTALLVENDORBIN=/home/josh/bin
INSTALLVENDORLIB=/home/josh/.perl/lib
INSTALLVENDORMAN1DIR=/home/josh/.perl/man/man1
INSTALLVENDORMAN3DIR=/home/josh/.perl/man/man3],


I could have also set mbuild_arg here too but I chose to use a
~/.modulebuidrc which does the same thing: all the libraries are
installed to the same location and all the scripts are installed to my
~/bin.

--installpath lib=/home/josh/.perl/lib
--installpath arch=/home/josh/.perl/lib
--installpath bin=/home/josh/bin
--installpath bindoc=/home/josh/.perl/man/man1
--installpath libdoc=/home/josh/.perl/man/man3

It works. It's verbose but it also means I generally don't have to
worry about my installs much.

Josh

Reply via email to