Subject: | Problem with PAR::Packer 1.022 on Perl 5.20.1 and earlier. |
Date: | Tue, 30 Sep 2014 12:10:56 -0400 |
To: | "bug-par [...] rt.cpan.org" <bug-par [...] rt.cpan.org> |
From: | "Fanchiotti, Sergio" <sergio.fanchiotti [...] standardandpoors.com> |
Dear PAR::Packer Maintainers,
I ran into an issue when trying to build an executable from a Perl script under Windows 7 (64 and 32 bits) using Strawberry Perl 5.20.1 (and 5.16 also) which seems to be caused by the use of an updated version of gcc in the MinGW package that is included in the distribution. When I wanted to run the par generated executable on a machine where strawberry perl was not installed it complained that libwinpthreads-1.dll was missing during the unpacking stage. After a bit of testing the source of the problem was that myldr was not including this library when building the executable. A change in the Makefile.PL file as shown below fixed the problem (not very elegantly). The missing dll breaks the portability of the executable and would ruin the purpose of building executable distributions.
Thanks for the fantastic PAR mechanism!
Regards,
Sergio
PS: The PAR::Packer does not pass all tests either under Windows 7 so I had to install it using the notest option. I wonder if this is related this problem also.
Changes in myldr/Makefile.PL
< my ($libgcc, $libstdcpp);
---
Show quoted text
> my ($libgcc, $libstdcpp, $libwpt);
248a249
Show quoted text> $libwpt = find_dll("libwinpthread*.$Config{so}");
261a263
Show quoted text> $libwpt,
Show quoted text________________________________
The information contained in this message is intended only for the recipient, and may be a confidential attorney-client communication or may otherwise be privileged and confidential and protected from disclosure. If the reader of this message is not the intended recipient, or an employee or agent responsible for delivering this message to the intended recipient, please be aware that any dissemination or copying of this communication is strictly prohibited. If you have received this communication in error, please immediately notify us by replying to the message and deleting it from your computer. McGraw Hill Financial reserves the right, subject to applicable local law, to monitor, review and process the content of any electronic message or information sent to or from McGraw Hill Financial e-mail addresses without informing the sender or recipient of the message. By sending electronic message or information to McGraw Hill Financial e-mail addresses you, as the sender, are consenting to McGraw Hill Financial processing any of your personal data therein.