semuelf at 012.net.il
Sat Nov 17 09:57:30 PST 2007
While developing my little embedded program, I come on the issue of
For a bit of background, DynaLoader is the Perl module that enables the
loading of shared objects (or DLLs on Windows). The SO are the C parts - XS
parts of other modules. However, DynaLoader itself is part perl and part C -
who loads the loader?
So the C part should be statically linked into Perl. That is why there is a
".a" file - for statically linking.
Anyway, on my Windows machine this file does not exist. I wrongly assumed
that it's a Windows-verus-Unix thing. But when Shlomi Fish tested the module
on a Linux machine, it didn't have this file either.
This gave me the conclusion: it's an ActiveState thing. (both of us tested
the module on an ActiveState distro) They physically include the C part of
DynaLoader inside the libperl.so, so you don't need it anymore.
In contrast, the official distro probably statically link it to perl
An I right? Wrong? Missed something?
More information about the Perl