[rt.cpan.org #110480] Unpacking exe: File exists
[email protected] ("Roderich Schupp via RT")
| Newsgroups | perl.par |
|---|---|
| Message-ID | <[email protected]> |
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: [email protected]
Status: open
Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=110480 >
On 2016-01-07 04:49:47, [email protected] wrote:
> Best wishes for the new year. Sorry for the delay - was on vacation ;-
Best wishes to you, too.
> I filtered the output after using -vv option for "lib/version":
> ------
> 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?
Anyway, some remarks about your command line:
> I used the following command line:
> ----
> 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