Hi Steffen and others,
I have run into a defect others (e.g. Scott Stanton in May 2008) have
experienced before.
The symptom is "Can't locate IO/file.pm in @INC ..." when calling pp.
In short, PAR::StrippedPARL::Base.pm::wirte_parl uses the current's Perl @INC
members
as -I"<inc_dir>" as input to the freshly unpacked parl as part of the
compilation process.
Unfortunately, the quotes render this input completely useless (and is not
needed since @args
is later on passed to system() as array.
The defect shows only up where the compilation environment (where @INC gets
statically packed into
the DATA appendix of ...::Base.pm) differs from the runtime environment.
The context diff of the tested fix is attached below (tested with Perl 5.8.8 on
Solaris 8 (build) and 10 (pp runtime).
Though I fixed the defect in PAR::Packer 0.991, the diff is based on fixing
0.992_02 (no code change in this place).
Thanks for the great work!
Cheers,
Markus
diff -c lib/PAR/StrippedPARL/Base.pm.orig lib/PAR/StrippedPARL/Base.pm
*** lib/PAR/StrippedPARL/Base.pm.orig Sun Jul 19 15:15:35 2009
--- lib/PAR/StrippedPARL/Base.pm Fri Jul 24 14:51:15 2009
***************
*** 71,77 ****
my @libs = ();
for my $ilib ( @INC ) {
$ilib =~ s/\\$/\\\\/;
! push(@libs, qq(-I\"$ilib\") );
}
my @args = (@libs, qw/-q -B/);
--- 71,77 ----
my @libs = ();
for my $ilib ( @INC ) {
$ilib =~ s/\\$/\\\\/;
! push(@libs, qq(-I$ilib) );
}
my @args = (@libs, qw/-q -B/);
--
Markus Jansen
Master Methods & Tools Engineer, PM & IT
Ericsson GmbH
Eurolab R&D
Ericsson Allee 1
52134 Herzogenrath, Germany
www.ericsson.com Office: +49 2407 575 5157
Fax: +49 2407 575 98452
Mobile: +49 172 274 2003
Email: [email protected]
Ericsson GmbH. Sitz: Düsseldorf. Registergericht: Amtsgericht Düsseldorf, HRB
33012. Geschäftsführer: Carsten Ahrens. Aufsichtsratsvorsitzender: Anders Olin
This communication is confidential and intended solely for the addressee(s).
Any unauthorized review, use, disclosure or distribution is prohibited. If you
believe this message has been sent to you in error, please notify the sender by
replying to this transmission and delete the message without disclosing it.
Thank you.
E-mail including attachments is susceptible to data corruption, interception,
unauthorized amendment, tampering and viruses, and we only send and receive
emails on the basis that we are not liable for any such corruption,
interception, amendment, tampering or viruses or any consequences thereof.