in reply to Re: [Inconsequential] Strawberry Perl and MM_Win32.pm
in thread [Inconsequential] Strawberry Perl and MM_Win32.pm

In AS-Perl all bundled modules go to perl/lib and all modules installed later go into perl/site/lib.

False. AS only puts core modules go into perl/lib, all others go into site/lib.

  • Comment on Re^2: [Inconsequential] Strawberry Perl and MM_Win32.pm

Replies are listed 'Best First'.
Re^3: [Inconsequential] Strawberry Perl and MM_Win32.pm
by CountZero (Bishop) on Jan 21, 2007 at 13:01 UTC
    That is not true anymore. In the latest version of AS Perl (version 5.8.8 build 819), the perl/site/lib starts out empty and gets filled by modules you install yourself (through CPAN / CPANPLUS or ppm).

    From the docs:

    There are two install areas that always are present for an ActivePerl installation: perl and site. The perl interpreter itself, the core modules, and packages bundled by ActiveState are in the perl install area. The site install area is where the local administrator installs additional packages. This area starts out empty in a new installation of ActivePerl.

    CountZero

    "If you have four groups working on a compiler, you'll get a 4-pass compiler." - Conway's Law

      Also in the docs, "Upgrading from ActivePerl 5.8.x", point 2 says:
      Manually delete all directories beneath the Perl installation directory (by default C:\Perl) except the site\lib directory.
      I've been doing this for a few years now. Does your quote imply that what used to be installed in the site dir is now in the "perl install area" and that I could now have the same modules installed in both? @INC lists the site dir first so am I right in thinking a possibly more recent version of a module in the "perl install area" won't be picked up?

      If this is so what is the best way of fixing this?

        Personally I think it is not a good idea to follow this upgrade advice and I have made a new clean install and added the modules I needed so they appeared in the perl/site/lib directory.

        Indeed modules in perl/site/lib will mask modules in perl/lib. Given the chance that some modules in my (old) perl/site/lib were less recent than in the (new) perl/lib I did not take any risks here.

        CountZero

        "If you have four groups working on a compiler, you'll get a 4-pass compiler." - Conway's Law

        Manually delete all directories beneath the Perl installation directory (by default C:\Perl) except the site\lib directory.

        I don't see any problem with that upgrade advice unless you're updating from build 817 (or earlier) to build 818 (or later) - in which case you should first remove the existing version entirely.

        Cheers,
        Rob