[rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll

2010-06-16 Thread RSCHUPP via RT
Wed Jun 16 05:03:11 2010: Request 57948 was acted upon.
Transaction: Correspondence added by RSCHUPP
   Queue: PAR-Packer
 Subject: 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 


Please direct follow ups w.r.t. the build problem
recently reported on this ticket (which is different
from the original problem) to #58266


Re: [rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll

2010-06-07 Thread mjk via RT
Sun Jun 06 13:30:10 2010: Request 57948 was acted upon.
Transaction: Correspondence added by m...@iki.fi
   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 


Running the installation again with force:

force install PAR::Packer

Seems to be able to complete the installation without errors.

And the resulting executable works fine!


I don't yet understand, what went wrong with the first installation  
round. Running the install twice seems to do the trick.


-Matti





Re: [rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll

2010-06-07 Thread Roderich Schupp via RT
Mon Jun 07 02:03:46 2010: Request 57948 was acted upon.
Transaction: Correspondence added by roderich.sch...@googlemail.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: http://rt.cpan.org/Ticket/Display.html?id=57948 



 I don't yet understand, what went wrong with the first installation  
 round. Running the install twice seems to do the trick

I encountered that problem, too. Running dmake twice completes the build.
Looks like I broke some subtle ordering constraint in the Makefile.

Cheers, Roderich



[rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll

2010-06-07 Thread RSCHUPP via RT
Mon Jun 07 07:29:57 2010: Request 57948 was acted upon.
Transaction: Correspondence added by RSCHUPP
   Queue: PAR-Packer
 Subject: 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 


Folks, the build problems have nothing to do with the original bug.
Fort iem


[rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll

2010-06-07 Thread RSCHUPP via RT
Mon Jun 07 07:34:19 2010: Request 57948 was acted upon.
Transaction: Correspondence added by RSCHUPP
   Queue: PAR-Packer
 Subject: 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: resolved
 Ticket URL: https://rt.cpan.org/Ticket/Display.html?id=57948 


 Folks, the build problems have nothing to do with the original bug.
For the time being, follow the advice in my last entry
or file a new bug report, BUT KEEP THIS BUG RESOLVED.


[rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll

2010-06-06 Thread RSCHUPP via RT
Sat Jun 05 18:42:55 2010: Request 57948 was acted upon.
Transaction: Correspondence added by RSCHUPP
   Queue: PAR-Packer
 Subject: 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 


I just released PAR::Packer 1.005 that should fix 
the issue with libgcc*.dll on Strawberry Perl 5.12.

Cheers, Roderich


Re: [rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll

2010-06-02 Thread Steffen Mueller via RT
Tue Jun 01 05:01:25 2010: Request 57948 was acted upon.
Transaction: Correspondence added by SMUELLER
   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 


RSCHUPP via RT wrote:
Queue: PAR-Packer
  Ticket URL: https://rt.cpan.org/Ticket/Display.html?id=57948 
 
 On Sun May 30 08:20:47 2010, mark.doot...@znix.com wrote:
 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.
 
 Thanks for the explanation, Mark. 
 I'll hold my nose and try the load_me_3 approach then, stay tuned.

Hey, I survived modifying the load_me stuff, too! But I probably have 
lower standards :)

More seriously, I'm pretty sure you already know how it works, but it's 
just a vehicle of embedding an arbitrary file as a variable in C code  
extracting it when run. I believe I refactored some of it to be slightly 
less insane a few years back. It's still totally a kludge, but alas, I 
don't have a good idea of how we could work around it. Except that 
statically linking a libz for some minor compression and reduction of 
the executable file size would be really cool. Not saying *you* should 
do that, mind you.

Cheers,
Steffen



[rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll

2010-06-01 Thread RSCHUPP via RT
Tue Jun 01 02:49:24 2010: Request 57948 was acted upon.
Transaction: Correspondence added by RSCHUPP
   Queue: PAR-Packer
 Subject: 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 


On Sun May 30 08:20:47 2010, mark.doot...@znix.com wrote:
 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.

Thanks for the explanation, Mark. 
I'll hold my nose and try the load_me_3 approach then, stay tuned.

Cheers, Roderich


Re: [rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll

2010-05-31 Thread Mark Dootson via RT
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






Re: [rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll

2010-05-30 Thread mjk via RT
Sat May 29 15:15:32 2010: Request 57948 was acted upon.
Transaction: Correspondence added by m...@iki.fi
   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: http://rt.cpan.org/Ticket/Display.html?id=57948 



 Known problem, buried deep in #57272.

 Can you please try the patch attached to
 https://rt.cpan.org/Ticket/Display.html?id=57272#txn-776549

 Note that you must rebuild PAR::Packer with this patch, install it
 and then repack your script to test the fix.


OK, now that I know what to look for and I think I have a little bit  
better understanding of the anatomy of the pp-generated executables, I  
re-checked the patch (bug #57272). It does include the DLL in the PAR  
package, but when I execute the executable, the temporary directory  
only has the following files:

- perl512.dll
- pingtest.exe

In other words, the DLL is not extracted from the package.

Bad news is that according to the cygcheck, both of these files depend  
on the libgcc_s_sjlj-1.dll.

So, if I have understood previous messages correctly, it seems that  
all fingers are actually pointing to the MinGW.


-Matti





Re: [rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll

2010-05-30 Thread Mark Dootson via RT
Sat May 29 09:03:30 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,

perl5xx.dll depends on libgcc_s_sjlj-1.dll, so libgcc_s_sjlj-1.dll needs 
to be packed with, and extracted with perl5xx.dll before any Perl code 
is run at all.

Cheers

Mark

On 28/05/2010 20:49, mjk via RT wrote:
 Fri May 28 15:49:57 2010: Request 57948 was acted upon.
 Transaction: Correspondence added by m...@iki.fi
 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
   TicketURL: http://rt.cpan.org/Ticket/Display.html?id=57948



 Known problem, buried deep in #57272.

 Can you please try the patch attached to
 https://rt.cpan.org/Ticket/Display.html?id=57272#txn-776549

 Note that you must rebuild PAR::Packer with this patch, install it
 and then repack your script to test the fix.


 I tried the patch mentioned above. The problem still exists. The end
 result of the pp still depends on the libgcc_s_sjlj-1.dll. My guess is
 that including this library inside the packed script does not help
 because the executable for some reason requires the DLL at pretty
 early stage of the execution. So, the DLL inside the packed script has
 no effect in this case.

 If I have time, I have to investigate, what the PAR::Packer is doing
 while compiling the stub. I imagine that it should be possible to
 compile the stub in such way that this DLL is not needed when the stub
 part of the package is executing.


 -Matti







Re: [rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll

2010-05-30 Thread Mark Dootson

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





Re: [rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll

2010-05-29 Thread mjk via RT
Fri May 28 15:49:57 2010: Request 57948 was acted upon.
Transaction: Correspondence added by m...@iki.fi
   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: http://rt.cpan.org/Ticket/Display.html?id=57948 



 Known problem, buried deep in #57272.

 Can you please try the patch attached to
 https://rt.cpan.org/Ticket/Display.html?id=57272#txn-776549

 Note that you must rebuild PAR::Packer with this patch, install it
 and then repack your script to test the fix.


I tried the patch mentioned above. The problem still exists. The end  
result of the pp still depends on the libgcc_s_sjlj-1.dll. My guess is  
that including this library inside the packed script does not help  
because the executable for some reason requires the DLL at pretty  
early stage of the execution. So, the DLL inside the packed script has  
no effect in this case.

If I have time, I have to investigate, what the PAR::Packer is doing  
while compiling the stub. I imagine that it should be possible to  
compile the stub in such way that this DLL is not needed when the stub  
part of the package is executing.


-Matti





Re: [rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll

2010-05-29 Thread Mark Dootson

Hi,

perl5xx.dll depends on libgcc_s_sjlj-1.dll, so libgcc_s_sjlj-1.dll needs 
to be packed with, and extracted with perl5xx.dll before any Perl code 
is run at all.


Cheers

Mark

On 28/05/2010 20:49, mjk via RT wrote:

Fri May 28 15:49:57 2010: Request 57948 was acted upon.
Transaction: Correspondence added by m...@iki.fi
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
  TicketURL: http://rt.cpan.org/Ticket/Display.html?id=57948




Known problem, buried deep in #57272.

Can you please try the patch attached to
https://rt.cpan.org/Ticket/Display.html?id=57272#txn-776549

Note that you must rebuild PAR::Packer with this patch, install it
and then repack your script to test the fix.



I tried the patch mentioned above. The problem still exists. The end
result of the pp still depends on the libgcc_s_sjlj-1.dll. My guess is
that including this library inside the packed script does not help
because the executable for some reason requires the DLL at pretty
early stage of the execution. So, the DLL inside the packed script has
no effect in this case.

If I have time, I have to investigate, what the PAR::Packer is doing
while compiling the stub. I imagine that it should be possible to
compile the stub in such way that this DLL is not needed when the stub
part of the package is executing.


-Matti







[rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll

2010-05-28 Thread mjk via RT
Fri May 28 07:21:05 2010: Request 57948 was acted upon.
Transaction: Ticket created by m...@iki.fi
   Queue: PAR-Packer
 Subject: Bug report: pp-generated executable and a missing dependency 
libgcc_s_sjlj-1.dll
   Broken in: (no value)
Severity: (no value)
   Owner: Nobody
  Requestors: m...@iki.fi
  Status: new
 Ticket URL: https://rt.cpan.org/Ticket/Display.html?id=57948 


Platform: Windows XP SP3 32-bit, Windows Vista SP2 32-bit
Perl version: Strawberry Perl 5.12.0.1
PAR::Packer version: 1.004
Module installed via CPAN client

PAR::Packer pp command generates executable files under Windows  
environment that depend on shared library called  
libgcc_s_sjlj-1.dll. It seems that parl.exe depends on this library.

If the target platform does not have this shared library somewhere in  
the path, the following error message will be displayed:

---
pingtest.exe - Unable To Locate Component
---
This application has failed to start because libgcc_s_sjlj-1.dll was  
not found. Re-installing the application may fix this problem.
---
OK
---

The project was compiled with the command-line: pp -o pingtest.exe pingtest.pl

If the libgcc_s_sjlj-1.dll is copied from the Strawberry Perl system  
(C:\Strawberry\perl\bin\libgcc_s_sjlj-1.dll) to the same directory  
with the pp-generated executable, the executable will work correctly.

Trying to include the DLL into the packed executable with an -a option  
does not solve the problem.

Side-note: for some reason a dependency checker (for example cygcheck)  
does not see that the generated executable depends on the  
libgcc_s_sjlj-1.dll.


Best regards,

Matti Kärki





[rt.cpan.org #57948] Bug report: pp-generated executable and a missing dependency libgcc_s_sjlj-1.dll

2010-05-28 Thread RSCHUPP via RT
Fri May 28 08:51:39 2010: Request 57948 was acted upon.
Transaction: Correspondence added by RSCHUPP
   Queue: PAR-Packer
 Subject: 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: new
 Ticket URL: https://rt.cpan.org/Ticket/Display.html?id=57948 


On Fri May 28 07:21:05 2010, m...@iki.fi wrote:

 PAR::Packer pp command generates executable files under Windows
 environment that depend on shared library called
 libgcc_s_sjlj-1.dll. It seems that parl.exe depends on this library.

Known problem, buried deep in #57272.

Can you please try the patch attached to
https://rt.cpan.org/Ticket/Display.html?id=57272#txn-776549

Note that you must rebuild PAR::Packer with this patch, install it
and then repack your script to test the fix.

Cheers, Roderich