On Jun 18, 2006, at 8:16 PM, Ron Savage wrote:
Thanx for the quick response.
I'm in Melbourne (Aust, not Florida). Do you work 24x7 or are you
in a similar
(i.e. civilized :-) timezone?
Heh - you just happened to get lucky today. After the Father's Day
festivities here in GMT-0500, I guess I checked my mail right after
you sent that message.
I used to live in Sydney while I was doing my master's degree at
Sydney Uni, but now I'm back in Minneapolis.
Nope. The install program contains:
use lib "$ENV{'INSTALL'}/lib";
and has - I'm /pretty/ sure - from the year dot.
I either use that line or the full path to the same lib dir in all
main
programs, since (on this GNU machine) I do not have permission to
install into
the 'usual' dirs. And no, I don't use PERL5LIB except when trying
to diagnose
problems such as this. Seems pretty clear to me. I'll just write it
off as
another quirk of V 5.8.0.
Hm, but not one I understand. The only case I know of when
ExtUtils::Install won't uninstall a previous version that it finds in
@INC is when the file contents are identical with what it just
installed. An AFS thing apparently.
So I guess the options are:
o use lib "$ENV{'INSTALL'}/lib/perl";
and uninstall and reinstall all modules so they all go into lib/perl5
Unless any module is actually aware of where it's installed
(something I've never come across), you should be able to just move
all the modules from lib/ to lib/perl5/ . That's probably how I'd
deal with it. None of the internal pathing should have changed.
Now under Windows:
BTW: I found another module, ExtUtils::Install, where Module::Build
V 0.2801 did
not uninstall the previous version. I uninstalled it by hand. I did
notice that
earlier version of ExtUtils::Install was installed in /perl/lib/
and did not
have a .packlist file. Is that what M::B uses to find what to
uninstall?
Actually, ExtUtils::Install is the very module that manages the --
uninst flag for Module::Build. We simply call
ExtUtils::Install::install($install_map, $verbose, 0, $uninst) and
let EU::Install do its UNINST thing.
As for what EU::Install will uninstall, I don't think it has anything
to do with .packlists. I think it simply decomposes filenames into
the part relative to the target directory, then looks for more copies
of those files elsewhere in @INC.
If this is on Windows, I wonder if maybe it's a problem of the files
being currently open, and thus unremovable?
Also, the new version installed into /perl/site/lib, and not
/perl/site/lib/perl5 (having regard to the change you quoted),
because (under
Windows) I don't use install_base and everything just works. Sigh.
Do you use --prefix to do that installation, or is that the default
location? AFAIK the default location shouldn't have changed, nor the
--prefix location, so I'm not sure what's going on there.
-Ken