Slash Boxes
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.
More | Login | Reply
Loading... please wait.
  • indigo perl seems to have most of what you want. it is a single file install, can load modules from cpan (via a gui or console so i imagine it can be scripted) and can compile source modules (i assume xs) but it needs devstudio. the owner is a good guy (a friend i have met at yapc's) and may be able to help you package gcc in it so you can get what you want. []


    ps. did i say how much i hate web interfaces for text stuff like replies to blo

  • I think PXPerl ( []) comes very close. even comes preconfigured, it just works out of the box. I've tried it with the MinGW compiler, and modules like DBI and DBD::SQLite, as well as Data::Dumper::Streamer, all compile and test alright. That is: those XS modules that are standalone. The next step is modules that require external libraries... :-/

    If this, in your opinion, a winner, then I'd prefer the price to go to the person that is responsible PXPerl and that isn't me.
    • I've been watching PXPerl for a while, and it's bloody close.

      But unfortunately the original author has gone AWOL and not been heard from in 2 months.

      It currently fails points 4 and 7.

      If someone can fix that so that the compiler stuff all installs as well, the reward is yours to allocate as you see fit. The PXPerl author certainly isn't around to claim the prize at the moment...
      • The PXPerl website explains what is happening. The author is a student and is rather busy at the moment. I would rather see someone step in to help kick PXPerl over the top. It is *really* close.
  • For me I'd like to see point 2 be Perl 5.6.1 or higher. There are still a lot of Perl apps out there running 5.6.1 for various reasons. I still get emails from people who find my CPAN testers reports asking about installing modules on Windows for 5.6.1.

  • Here's my attempt at a straightforward installer which I believe meets your requirements without inventing a whole new distribution of perl or gcc: []

    I picked one combination (and listed some alternatives considered) but the approach should be easily adaptable and maintainable.

    • I managed to get it to compile after adding the ISX Download DLL files to the same directory as the camelpack.iss file.

      During installation, I only checked the mingw installation, to save some time.
      Installation failed, it couldn't find the file it thought it had downloaded to the tmp directory.

      I tried to uninstall, that failed with
      'an attempt was made to expand the "app" constant but Setup didn't create the "app" dir'
      so the program (listed as "2006.1" in add/remove programs) is still there.

      Exactly how did yo
      • Hey fireartist .. thx for your feedback, I'll test this out. Looks like I may have messed up the uninstall options on the uploaded version. There's no actual app to remove at the moment (it's calling other installers, which have their own uninstallers) .. so there shouldn't be an add/remove entry.

        Regarding inno/isx, I installed:
          - Innosetup
          - IStool
          - IStool download DLL .. then did any compiling/editing via ISTool. fwiw, ISTool seemed to have the download DLL properly registered wit
        • FYI, have uploaded a corrected version with the "uninstall" options removed.

          If you need to remove a bogus uninstall entry, the path in regedit to delete is:

          HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{2C936648 -0116-46EA-9398-49258B6325C3}


    • Since my Microsoft Action Pack just arrived, I'm setting up a fresh installation of XP inside a new, clean, virtual image. I should have a confirmation of rejection in a few hours.
    • OK, having had time to install it, here's an official report card.

      1. Pass

      2. Pass

      3. Pass (with comment)

      While I'm a bit iffy about not having the other installers embedded, it did work just fine, and since the goal is to install from CPAN, requiring a network connection for the installation isn't unreasonable. So Pass.

      4. Pass

      5. Pass

      6. Fail (with comment)

      Running the installation inside the image worked, but the first-time configuration process failed utterly. After 2 hours of debugging and 4 new RT bug
      • After talking with fireartist regarding vanillaPerl, it would appear that with the new Windows firewall + other reasons there's no way we'd ever want FTP to _not_ use passive.

        So the recommendation is to set FTP_PASSIVE=1 at the system level in.

        HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

      • OK, have updated the installer to set FTP_PASSIVE by default; please retest.

  • 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: [] (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,

    • 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 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?
  • BTW While we're looking at alternative Perl distributions for Win32, do not overlook niPerl []. There's some interesting work that's been done, there, including the alternative GUI builder tool.