http://qs321.pair.com?node_id=639680


in reply to Re^3: Perl 6 and exe
in thread Perl 6 and exe

if you really want perl executable with any extension to be linked statically into the main executable

I don't understand. There is no perl executable if Perl is statically linked into your executable.

Replies are listed 'Best First'.
Re^5: Perl 6 and exe
by vkon (Curate) on Sep 19, 2007 at 05:19 UTC
    I had in mind main perl executable but linked in such a way that it runs foo.pl seamlessly (not from any application, we were talking of a way to create EXEs out from perl scripts from the very start.)

    suppose you have script foo.pl, which uses Bar:: and Fluffy:: XS extensions.
    ($^O equals to 'MSWin32' in my explanations)

    You want to create foo.exe, much like PAR but with statical linking and w/o temporary unzips.

    With an approach kept by me in mind (and by Ilya Zakharevich in mentioned link) you will result in:

    • perl58s.lib <- static library, which is not against perl58.dll, but rather all the code inside it
    • Bar.lib, Fluffy.lib <- same for extensions
    • foo.zip <- to contain all text files with Perl scripts: foo.pl, and required perl core library
    • perlmain.c from perl source distribution which contains RunPerl call, and link it against all mentioned libs
    • concatenate resulting EXE with foo.zip like in Ilya's message
    The resulting perl executable runs your foo.pl and w/o temporaries.