Build perl without libgcc_s_sjlj-1 dependency

[email protected] Thu, 1 Oct 2015 14:45:48 +1000
Newsgroups perl.win32.vanilla
Message-ID <86E22B1F4CCE461E807187FABE2A4C40@OwnerPC311012>
Hi,

Is there someone here who can provide info/link to building perl (using 
mingw port of gcc) without it being dependent on libgcc_s_sjlj-1.dll, 
libstdc++-6.dll ?

(I'm familiar enough with building perl using mingw - I'm just seeking 
advice re the mechanism for removing the aforementioned dependencies.)

I provide the following by way of information. Feel free to comment on it. 
Also feel free to ignore it.

My mingw-built Math::Float128 ppm package doesn't work correctly with 
ActivePerl build 1600 (5.16.0).
Essentially it works fine .... the only problem arises when it comes to 
printing out the actual value contained in the Math::Float128 object:

C:\_32>perl -MMath::Float128 -le "$x=Math::Float128->new('2.3');print $x;"
1.28255230868747473742425564582366e-4937

The expected result is:

C:\_32>perl -MMath::Float128 -le "$x=Math::Float128->new('2.3');print $x;"
2.3e+00

I'm thinking this must be some runtime issue, so I've been comparing the dll 
files that my mingw-built perl-5.16.0 loads with the dll's that ActivePerl 
loads.
I was thinking they must be loading different C runtimes but, alas, the 
evidence is that they're loading the very same msvcrt.dll.
They also load the same system dll's.

Only difference I can find is that the mingw build's perl516.dll has 
dependencies upon libgcc_s_sjlj-1.dll, libstdc++-6.dll and the system 
WS2_32.dll, whereas the AS perl516.dll does not.

I don't know how to remove the WS2_32.dll dependency, but at least I can 
start by building a mingw-built perl that doesn't have the dependencies on 
the 2 helper dll's.
Then build Math::Float128 using that perl and see if that works any better 
with ActivePerl.
Instinctively I feel that it won't make any difference, but I can't think of 
anything else to try.

It's quite likely that other versions of ActivePerl (not just 5.16.0) are 
affected in the same way, but this is untested.

Cheers,
Rob