Sun May 30 08:20:47 2010: Request 57948 was acted upon. Transaction: Correspondence added by mark.doot...@znix.com Queue: PAR-Packer Subject: Re: [rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll Broken in: (no value) Severity: (no value) Owner: RSCHUPP Requestors: m...@iki.fi Status: open Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=57948 >
Hi, On 29/05/2010 17:55, RSCHUPP via RT wrote: > > So I see two possible options: > - stick with a dynamically linked custom Perl and > modify (conditionally for Strawberry only) the whole > load_me_* shebang in myldr and add a load_me_3 file that > would contain libgcc_s_*.dll (which would get extracted > alongside par.exe and perl512.dll) > - link the custom Perl statically, then the whole second > bootstrap phase is omitted and the problem goes away > > I definitely don't want to touch the load_me stuff with a > ten-foot pole, so I experimented with the latter option. > However, even after tweaking myldr/Makefile by hand I > couldn't produce a par.exe there that was NOT dynamically > linked against perl512.dll. > > @Mark: Do you know why even > > g++ main.o my_par_pl.o -Wl,-Bstatic -Lc:\strawberry\perl\lib\CORE > -lperl512 -o par.exe > > generates par.exe with a reference to perl512.dll? > > Cheers, Roderich > I'm not absolutely certain of the total effect of passing -static to ld on windows. For '-lperl512' what matters is what is contained in perl512.lib or libperl512.a. I don't think you can mix and match your linking model on Windows. So if you had a static perl.exe (or par.exe) you could not then load separate xs code dynamically - you would have to compile in all the xs modules you require. That's why, by default, you don't get a static perl built on MSWin. It is not generally useful. In a dynamic perl, all the xs dll's are dynamically linked to perl512.dll. You can't mix and match static / dynamic linking. You have to add a load_me_3 file or some windows specific function that does the same thing, I'm afraid. Regards Mark