Fri Sep 27 15:22:25 2013: Request 89003 was acted upon.
Transaction: Ticket created by [email protected]
Queue: PAR
Subject: PP prepends temp directory to system PATH
Broken in: (no value)
Severity: (no value)
Owner: Nobody
Requestors: [email protected]
Status: new
Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=89003 >
Windows XP SP3
Cygwin 2013-07-22
Strawberry PERL, 5.16.3
PP Packager, version 1.014 (PAR version 1.007)
When running a windows .EXE created by PP, the $PATH environment variable does
not accurately reflect the system path which was present at the time the EXE
was invoked. Specifically PP/PERL prepend a temp path, containing libraries
such as libstdc++-6.dll contained in the PP-generated .EXE.
This can potentially cause problems, if the PERL script packaged in the EXE by
PP invokes tools or utilities from the system which rely on different versions
of runtime libraries or packages that are contained in the packaged EXE.
This problem can be worked around by running the following, at the start of any
PERL code packaged by PP that relies on the correct system path contents:
use Env;
my @path = split(/$Config::Config{path_sep}/, $PATH);
shift @path;
my $fixedPath = join ($Config::Config{path_sep}, @path);
$PATH = $fixedPath;
Warren Hulme