http://qs1969.pair.com?node_id=939030


in reply to Pack multiple scripts in executables with one shared core dll

Yeah, PAR is PAR

You can pack however many modules (scripts) you want, and invoke each using mybigfatexe fooapp ... via .bat/.lnk/shellscript/.exe

Same strategy would work for perlapp or perl2exe

You could also pack PAR::WebStart's perlws, and pack each app using its make_par, then invoke each app using mybigfatexeshortcut.lnk or mybigfatexeshortcut.bat, or mybigfatexeshortcut.exe which just does system perlws.exe mybigfatexeshortcut.pnlp

cava packager provides something like out of the box

Replies are listed 'Best First'.
Re^2: Pack multiple scripts in executables with one shared core dll
by Lion-Tiger (Novice) on Nov 20, 2011 at 11:03 UTC
    The main problem with PAR is that it packs in one exe perl core and all used modules, so out exe is very big...
    And if I need more than one script, all of them will be packed with it's own perl and used modules!
    That's useless =(
    So if there is a way to pack scripts in small executables that use some other dll with perl and all needed modules?

      “Inconvenient,” perhaps, but not “useless.”

      In all seriousness, what is so utterly wrong with just using a subdirectory?   Apple’s OS/X system is rather elegant, I think, in taking that approach with how they package all applications:   they’re actually folders.   Just put your executable together more-or-less as a stub, and put the necessary Perl source modules into a directory in a chosen location.

      (When I have done this, I used a nested directory structure:   the outer directory contained README.TXT and an inner folder named guts.   The entire thing was marked read-only.   And the README file contained a message which basically said:   “Keep your mitts off that folder and everything that it contains.   These aren’t the ’droids you’re looking for.”   I got a few whimsical comments about that, so I know that some people read it.)   To me, this is every bit as convenient a form of “packaging” as a DLL-file would be, and considerably more maintainable.   It might well be more efficient, too, because Windows will routinely use VM-mapped file I/O when working with files.

        Great!
        That's just what I wanted!

        Thanks a lot!!!

      The main problem with PAR is that it packs in one exe perl core and all used modules, so out exe is very big... And if I need more than one script, all of them will be packed with it's own perl and used modules!

      Not if you pack them all in the same file as I already explained.

      That's useless =(

      Yes, reading is hard :)

      I do find working software is very useful

      So if there is a way to pack scripts in small executables that use some other dll with perl and all needed modules?

      My answer in Re: Pack multiple scripts in executables with one shared core dll wasn't a joke, either the par way, or the cava packager way is workable, and you can always create a relocatable perl and add modules to it, zip it, and ship it , if that works for your platform