On 4/11/07, Jason Forkey <[EMAIL PROTECTED]> wrote:
Am I trying to do something that won't work? I would have expected to have a
problem if I tried to build an executable, but I would think that a standalone
I just tried your example and - contrary to my reading of the documentation
for pp - it created a standalone script _including all core modules_.
That won't work, because some core modules (e.g. Cwd) consist of
Perl code + shared library which is of course architecture (ie. 64 vs 32)
dependent. The pp doc says:
-B, --bundle
Bundle core modules in the resulting package. This option is
enabled by default, except when -p or -P is specified.
But it seems to be in effect even when using -P. Unfortunately there's
no --no-bundle...
OK, the following patch to PAR::Packer seems to fix it.
Cheers, Roderich
--- /usr/share/perl5/PAR/Packer.pm.orig 2007-04-12 11:56:00.000000000 +0200
+++ /usr/share/perl5/PAR/Packer.pm 2007-04-12 11:58:09.000000000 +0200
@@ -1367,8 +1367,11 @@
my $output = $self->{output};
my $par_file = $self->{par_file};
- my @args = ('-B', "-O$output", $par_file);
+ my @args = ("-O$output", $par_file);
unshift @args, '-q' unless $opt->{v} > 0;
+ if ($opt->{B}) {
+ unshift @args, "-B";
+ }
if ($opt->{L}) {
unshift @args, "-L".$opt->{L};
}