Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • Just as an alternative to stennie's above, here's one that uses a built-from-source perl, rather than ActiveState's
    (I don't like that I can't distribute PAR-built exe's built using AS's perl unless I get written permission)

    You'll need this zip file: http://www.fireartist.com/tmp/vanillaPerl5.8.7.zip [fireartist.com] (41.5 KB)

    Unzip the file in c:\ it'll create a folder named c:\vanillaPerl5.8.7
    Just follow the instructions in c:\vanillaPerl5.8.7\build\installer.txt

    This is a very basic installation including perl5.8.7, gcc3.4.5, dmake and some programs from unixutils.
    There's an option to not install the start-menu icons - these are: a link to the cpan binary; a link to search.cpan.org and a link to the uninstaller.
    At the end of the installation process you'll be shown which paths you need to add to your PATH environment.

    This is suitable for automated testing, etc.

    You can get the full ready-to-use installation here: http://www.fireartist.com/tmp/vanillaPerl5.8.7.exe [fireartist.com] (15.3 MB)
    But please only download this if you need to, I'll be monitoring my bandwidth usage and will have to remove the file if I get near my monthly limit.

    I'll shortly be updating the instructions to support automatically editing the PATH environment on both install and uninstall.

    I've also lately been working on a script that will download and install pre-compiled modules from kobes cpan mirror - this is useful for modules that are still hard to install, such as DBD-mysql, DBD-sqlite and FCGI. Hopefully this can be incorporated.

    Tips

    • You can install modules by just entering cpan at a command prompt.
    • During cpan setup, you should be able to accept to defaults for everything (except mirror location), however if you accept the default folder location of .cpan it will be placed at c:\.cpan - I recommend you be explicit, for example c:\vanillaPerl5.8.7\perl\.cpan
    • The cpan setup should automatically find the unixutils programs such as gzip.exe, tar.exe and wget.exe

    A perl-level issue to be aware of is: you can't use cpan to upgrade a core module such as CPAN or File::Spec because MSWindows won't let a .dll file be overwritten while it's in use. (I know there's people are looking at this issue).

    I've tried building perl5.6.1, but it failed. I expect if an older version of mingw were used, it should work ok.

    • I've updated both the files - it now sets the PATH during install and uninstall.
      • For the benefit of the other contestants, at time of writing, vanillaPerl is a FAIL. I'm in discussion with the author, so I'll just summarise.

        - Doesn't set FTP_PASSIVE=1
        - gzip.exe crashes
        - Other minor CPAN.pm issues that might be fixed by the above being corrected.

        So at this time the contest is still open, with no winner, but two contestants closing in on the prize!
    • A perl-level issue to be aware of is: you can't use cpan to upgrade a core module such as CPAN or File::Spec because MSWindows won't let a .dll file be overwritten while it's in use. (I know there's people are looking at this issue).

      Its not a perl level issue at all. On win32 you can't delete open files. Period. Any installer will end up confronting this issue. Its the reason for the dreaded "you must reboot your machine" messages that are so well known in the Windows world.

      Some install techniques on

      • Thanks for the clarification ++

        Maybe CPAN / M::B could get round it, if libwin32 is installed, by adding a registry entry in the relevant 'run once' key, and asking the user to reboot.

        I'd personally find it quite amusing seeing cpan say "installation finished, please reboot to continue"!

        I suppose a problem would be if it happens when installing a prerequisite. Would it be sufficient for cpan to say, "please reboot, then run 'install Foo' again", rather than try to remember the state it was in?