I'm trying to create a packed exe to deploy on windows servers. Build as 'pp -o file.exe script.pl' . Builds fine, but when I run it I get:
Undefined subroutine &Scalar::Util::refaddr called at overload.pm
line92.
In an attempt to troubleshoot this, I added:
use Scalar::Util qw(refaddr);
to the script.
The script still runs fine when I run script.pl through perl, but now,
when I package the exe, and run it i get:
"refaddr" is not exported by the Scalar::Util module
This is somewhat confusing, as obviously Scalar::Util successfully
exportts refaddr when run as a perl script, but as the packaged exe, it
does not.
In Scalar/Util.pm:
refaddr is listed in @EXPORT_OK
however, sub refaddr { ... } is in a block that is only eval'd if a XS
import fails. Somehow it appears that in the pp packed version, the XS
doesn't load, but that block is not evaled either, as the refaddr
function is not exportable.
I guess I can fix it by hacking the XS load out of Scalar/Util.pm, and
forcing the sub refaddr { ... } perl function to be eval'd, but I was
sort of hoping someone else had a cleaner way to do this.
Thanks.
--
***********************************
* Alex Laslavic
* Linux Engineer
* WorldTravel BTI
* x49511
* gpg/pgp key at
* http://keys.jumpbox.net
***********************************
signature.asc
Description: This is a digitally signed message part
