Fri Sep 27 15:22:25 2013: Request 89003 was acted upon.
Transaction: Ticket created by whu...@cognivue.com
       Queue: PAR
     Subject: PP prepends temp directory to system PATH
   Broken in: (no value)
    Severity: (no value)
       Owner: Nobody
  Requestors: whu...@cognivue.com
      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


Reply via email to