Discussion:
[rt.cpan.org #110480] Unpacking exe: File exists
(too old to reply)
Roderich Schupp via RT
2015-12-21 13:35:50 UTC
Permalink
Mon Dec 21 08:35:39 2015: Request 110480 was acted upon.
Transaction: Correspondence added by RSCHUPP
Queue: PAR-Packer
Subject: Unpacking exe: File exists
Broken in: (no value)
Severity: (no value)
Owner: Nobody
Requestors: ***@gmx.de
Status: open
Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=110480 >
6 0 0 27.12.14 11:49 lib/version
That's the culprit. Packing your executable with "pp -vv ..." might give a clue where it is coming from. Did you use any -a or -A options for pp?
Since lib/version has the same timestamp and size as lib/unicore/version, my guess is
that it's a stray copy of the latter, i.e do you have a file
<Strawberry install path>/perl/lib/version?

Cheers, Roderich
Roderich Schupp via RT
2015-12-23 15:02:24 UTC
Permalink
Wed Dec 23 10:02:23 2015: Request 110480 was acted upon.
Transaction: Correspondence added by RSCHUPP
Queue: PAR-Packer
Subject: Unpacking exe: File exists
Broken in: (no value)
Severity: (no value)
Owner: Nobody
Requestors: ***@gmx.de
Status: open
Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=110480 >
----
-a Unicode::UCD
----
Omitting this entry, pp packs everything as expected. I added this to
----
----
Any hint how to include utf8_heavy.pl?
There will be an option -u (or --unicode) to pp in the next release of PAR::Packer
that essentially will do just that. Or you could try to pack with "pp -x ...".

BTW, what's the full pp command line that you used?

But I don't see why "-a Unicode::UCD" would pack a file "lib/version" into your
executable. Please try to pack with "pp -vv ..." and check its output where it gets
lib/version from.

Cheers, Roderich
Roderich Schupp via RT
2016-01-07 11:32:17 UTC
Permalink
Thu Jan 07 06:32:15 2016: Request 110480 was acted upon.
Transaction: Correspondence added by RSCHUPP
Queue: PAR-Packer
Subject: Unpacking exe: File exists
Broken in: (no value)
Severity: (no value)
Owner: Nobody
Requestors: ***@gmx.de
Status: open
Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=110480 >
Best wishes for the new year. Sorry for the delay - was on vacation ;-
Best wishes to you, too.
------
D:/Usr/programme/Strawberry/perl/lib/unicore/version as lib/version
As I suspected: lib/version is a copy of lib/unicore/version, though I still
have no clue why it is packed. This file is not Perl code, hence it can't have
been "require"d or "use"d. Neither is a file "version" explicitly added
via a rule in Module::ScanDeps. The only reason why it is packed at all
is a rule that says "include all files below .../unicore (where the latter
is located via @INC)". But that can only account for files named
"lib/unicore/..." in the exe...

Are there any other unicore files duplicated in the exe, e.g.
lib/unicore/NamedSequences.txt is also packed as lib/NamedSequences.txt?
----
pp --add=Win32::AbsPath
--add=Params::Validate::XS
Shouldn't be necessary, "use Params::Valdidate;" includes that automatically.
--add=Log::Log4perl::Filter::LevelRange
--add=Log::Log4perl::Appender::File
--add=Log::Dispatch::Screen
Shouldn't be necessary, "use Log::Log4perl;" includes them automatically.
--add=List::MoreUtils::PP
Arggh, another one of those stupid "we have both PP _and_ XS modules".
I'll add a rule to Module::ScanDeps.
--link=C:\Perl\Perl\lib\auto\socket\Socket.dll
That seems totally wrong for several reasons:
- it's not in you Perl installation path (as shown in other messages)
- it has the wrong name, "glue" DLLs on Strawberry Perl for Windows
are named *.xs.dll not just plain *.dll
Adding the '-x' option (without '--add=Unicode::UCD'), shows that the
compilation process misses some of my modules during compilation - so
the exe was incomplete. Those modules have been missing indeed.
Providing those modules and recompiling again, the compilation was
successful and the generated exe worked fine.
If -x works for you, there's not need to go back and add stuff manually.
BTW: When will -u Option be available?
Will be in the next release of PAR::Packer.

Cheers, Roderich
Roderich Schupp via RT
2016-01-28 09:55:25 UTC
Permalink
Thu Jan 28 04:55:24 2016: Request 110480 was acted upon.
Transaction: Correspondence added by RSCHUPP
Queue: PAR-Packer
Subject: Unpacking exe: File exists
Broken in: (no value)
Severity: (no value)
Owner: Nobody
Requestors: ***@gmx.de
Status: open
Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=110480 >


I finally found an explanation for the strange "lib/version" file in
your packed executable - you probably packed with "-M utf8_heavy.pl".
See #111455 (unable to use -x and -u with pp) for details,
will be fixed in the next release.

Cheers, Roderich

Loading...