in reply to Re^2: Problems running a packaged script.
in thread Problems running a packaged script.

Maybe try this adaptation of pp_simple: https://github.com/shawnlaffan/perl-pp-autolink. It does not need Wx.

  • Comment on Re^3: Problems running a packaged script.

Replies are listed 'Best First'.
Re^4: Problems running a packaged script.
by vitoco (Hermit) on Feb 07, 2019 at 20:26 UTC

    Wow! This time it worked!!! The EXE run on the server without perl environment.... Thank you!

    But... I wanted to know what was failing before, so I compared the new temp/par/cache dir with the one that aborted with the missing "new" error message, and... guess what? Only 3 missing DLLs: the same that I previously tried as an attempt and wrote about at the end of my original post (libcrypto-1_1-x64__.dll, zlib1__.dll and libssl-1_1-x64__.dll in addition to libexpat-1__.dll). And there was some missing files in the running EXE: two *.xs.dll and cacert.pm. Strange...

    And I also noticed that the *.pm files were of different size between cache dirs, and that was because I run pp_autolink.pl with the PAR_VERBATIM environment variable set.

    To have a better conclusion, I opened a new command prompt with standard settings and run original pp command linking those 4 DLL libs and made an EXE file, then run pp_autolink in the same session and made another EXE. I put both EXEs in the server and tried each of them, backing up and removing their respective new temp/par/cache dirs and compared them. Identical contents, except for the cacert.pem file. This was included in the EXE of the plain pp because I included it with "-a" in the command line. I did that (in a BAT file) because it was required at some point of the development of my script.

    So, why I couldn't run before posting this thread if I already tried adding those DLL? At this time I cannot say... I spent two days trying to generate a successfully running EXE by adding and removing things from the command line and updating my setups (both 32-bit and x64), and probably the right combination of components was met after I installed lots of non required modules while trying another alternatives like ppsimple. I didn't backup all the cache dirs, just removed them before each try in order to start a clean EXE. I came with this thread on the third day!

    Conclusion: to solve the missing "new" error on "LWP::Protocol::https::Socket" package, just include libcrypto-1_1-x64__.dll, zlib1__.dll and libssl-1_1-x64__.dll libraries in an up to date perl environment.

    Thanks to all!

Re^4: Problems running a packaged script.
by Anonymous Monk on Feb 07, 2019 at 10:34 UTC
    Ppsimple also doesnt depend on wx
      The version of ppsimple.pl that I found following the given search link required Wx::Perl::Packager, and Wx was installed by cpanm as a dependency of that module.

        LOL!

        Here is a patch

        # our $WXPAR = which('wxpar') or die "wxpar not installed "; our $WXPAR = which('wxpar') or warn "wxpar not installed ";

        Seriously