----- Original Message -----
From: "chm"
Any ideas on 3) ? I'll take a look as time permits.
The error message suggests that there's a dll that can't be found, but
usually when that's the problem one gets a pop-up that provides the name
of the dll that can't be found - and that's not happening in this case
:-(
My 32-bit compiler is gcc-4.5.2, as provided by mingw.org. If you've
been testing with Strawberry Perl you've probably been using gcc-4.4.x,
as provided by mingw64.sf.
I've never gotten the error popup with the missing
DLL info for my perl/PDL builds. If there were a
setting to enable it for testing, that would make
windows debugging go more smoothly.
For me, I mostly (but not always) get the pop-up.
I'm trying to think what would account for the apparent randomness of this
behaviour ... and have drawn a blank.
Maybe it really is *random* :-)
Luckily, MinGW's objdump utility reveals that the
auto/PDL/Drawing/Prima/Prima.dll depends upon (the non-existent) dll.exp.dll
:
#################################
C:\>objdump -x Prima.dll | grep "DLL Name"
DLL Name: KERNEL32.dll
DLL Name: msvcrt.dll
DLL Name: libgcc_s_dw2-1.dll
DLL Name: perl512.dll
DLL Name: dll.exp.dll
#################################
dll.exp.dll is a file that sometimes gets created during the build of a perl
extension (triggered by god knows what), but doesn't seem to be built in
this instance (and doesn't exist any place that I can find).
I satisfied the dependency by sticking a copy of another dll (renamed to
dll.exp.dll) adjacent to Prima.dll - but then the error just changes to:
load_file:The specified procedure could not be found
Apparently this 'dll.exp.dll' must contain something useful.
In fact, on close inspection of the rather voluminous 'objdump -x Prima.dll'
output, I find:
DLL Name: dll.exp.dll
vma: Hint/Ord Member-Name Bound-To
36948 495 apc_gp_draw_poly
3695c 500 apc_gp_fill_poly
36970 803 gimme_the_mate
36984 804 gimme_the_vmt
When I look at the corresponding x64 Prima.dll (which has no dll.exp.dll
dependency) I find that these are the very functions that *Prima.dll* itself
is supposed to export.
I'm glaring (with some suspicion, and much disdain) at Module::Build ....
Time to get the shovel out.
Cheers,
Rob
_______________________________________________
Perldl mailing list
[email protected]
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl