Quoth mose...@hank.org (Bill Moseley): > > I just fetched Template Toolkit from CPAN and manually ran Makefile.PL and > make install which installed into /usr/local/lib/perl/5.10.0. It included > Template::Plugin::HTML. > Running "make install" reported: > > Installing /usr/local/lib/perl/5.10.0/Template/Plugin/HTML.pm > > I then ran h2xs and generated this in Makefile.PL > > WriteMakefile( > NAME => 'Template::Plugin::HTML', > VERSION_FROM => 'lib/Template/Plugin/HTML.pm', # finds $VERSION > PREREQ_PM => {}, # e.g., Module::Name => 1.1 > ($] >= 5.005 ? ## Add these new keywords supported since 5.005 > (ABSTRACT_FROM => 'lib/Template/Plugin/HTML.pm', # retrieve abstract > from module > AUTHOR => 'Bill Moseley <moseley@>') : ()), > ); > > When installing this new module I see: > > Installing /usr/local/share/perl/5.10.0/Template/Plugin/HTML.pm > > Maybe it's been a long day, but I don't see the difference between the two > Makefile.PLs that are causing the different install paths -- but there must > be something. > > http://cpansearch.perl.org/src/ABW/Template-Toolkit-2.22/Makefile.PL is the > other Makefile.PL. > > What determines /usr/local vs. /usr/share?
Whether the distribution has an XS component or not (TT2 does, your example doesn't). See INSTALL* and INST_* in EUMM's docs, though it's rather difficult to work out exactly what goes where. I think the simple rule is 'if there are any files under blib/arch at install time, use the arch-dependant directory'; normally that is something like /usr/local/lib/perl5/site_perl/5.10.1/i386-freebsd but you must be using one of the Linux distros (Debian?) that maps SITELIB to /usr/local/share/perl and SITEARCH to /usr/local/lib/perl. Ben