On Wed, Jul 14, 2010 at 2:46 AM, Roderich Schupp
<[email protected]> wrote:
> On Wed, Jul 14, 2010 at 12:30 AM, scott miller <[email protected]> 
> wrote:
>>>> myldr/par is sitting at about 4.2 MB.
>>>
>>> Why is that so large? It should be about the size of your perl executable
>>> (because it is actually a special purpose Perl interpreter).
>>
>> Very good question, that is also the size of my perl binary, which is
>> about twice as larger than I'd expect...
>>
>> For comparison the version of perl that is distributed with HP IA64
>> systems (called perl-dynamic...the standard perl binaries are symbolic
>> links to it) appears to be only about 22KB, which is much smaller than
>> I'd expect.  The my_libperl.c that is produced with that perl
>> distribution still appears to be 38MB, but the my_par.c is
>> significantly smaller at 1.1MB.
>
> If the perl executable is dynamically linked against a shared
> libperl*.so or similar,
> then par should be, too. The "standard" perl binary with a size of 22KB is
> almost certainly linked dynamically. In that case you should also see a file
> myldr/my_libperl.c which contains this libperl*.so stuffed into some
> static char arrays.
>
> If the perl executable is not dynamically linked against a libperl*.so then
> PAR::Packer should not have generated myldr/my_libperl.c.
> In any case, the par binary should be about the same size as the perl binary.
> my_par.c and my_libperl.c should be about 5 times the size of par and
> libperl*.so, resp.
>
> If your self-built perl and libperl*.so are much larger than the distributed
> versions, maybe the contain debug information?
>
> Cheers, Roderich
>

Recompiling perl, using a shared libperl did the trick.

Thanks for your help,

Scott

Reply via email to