amearse has asked for the wisdom of the Perl Monks concerning the following question:

Can anybody tell me if they have experience trying to deploy perl solutions across a wide variety of hosts with little uniformity? About the only thing I can count on being available on the hosts is perl and jvm. No gnu tools or any of the libraries that the solution uses are available. And there are a lot of hosts, so I can't possibly re-image them to do what I want. Basically I want something like a java archive but with the system level detail and low overhead development I can get with perl. There doesn't seem to be any mature solutions. Perlcc crapped out on me. Shipwright doesn't really help. What I need is a true, working Perlcc that I can use to create complete binaries compiled with libraries on my dev machine for multiple architecture options. Any direction or comments would be greatly appreciated. Thanks.
  • Comment on Deploying Multi-Platform Perl Solutions

Replies are listed 'Best First'.
Re: Deploying Multi-Platform Perl Solutions
by marto (Cardinal) on Apr 13, 2010 at 19:35 UTC
      perlcc is dead

      Seems to have been resurrected. (Still experimental, but.)

      Cheers,
      Rob
Re: Deploying Multi-Platform Perl Solutions
by MadraghRua (Vicar) on Apr 13, 2010 at 20:40 UTC
    I've had decent luck with ActiveState's perlapp. I've used it to distribute both Windows and Linux platforms. Both have to be built on the target platform. Hope that helps.

    MadraghRua
    yet another biologist hacking perl....

      I am also an Active State user. This is just theory as I haven't tried it yet, but supposedly it is possible to build executable files for Linux, Mac OS X and Windows all on my Win platform with the latest Active State Dev kit. I have no idea of how this cross platform stuff is supposed to work and I haven't tried it yet, so buyer beware.
Re: Deploying Multi-Platform Perl Solutions
by mickep76 (Beadle) on Apr 14, 2010 at 15:33 UTC

    Well you can automate the compilation of perl modules also you can put them in a separate location not to interfere with local modules.

    perl Makefile.PL LIBS=$HOME/.perl PREFIX=$HOME/.perl && make && make install

    To use the libraries you only set the PERL5LIB like:

    PERL5LIB=$HOME/.perl

    or Include the following in the header of your script:

    BEGIN { push @INC, "$ENV{'HOME'}/.perl"; }