develooper Front page | perl.par | Postings from March 2012

RE: issues with exe file produced from Par-Packer-1.013 , onwindows XP.?

Thread Previous | Thread Next
From:
chandrashekaran kannan
Date:
March 9, 2012 07:20
Subject:
RE: issues with exe file produced from Par-Packer-1.013 , onwindows XP.?
Message ID:
SNT115-W42AF7250CF84D437B7EB0AEF540@phx.gbl

Hi Roderich  Thanks a million . This  worked .   The time it takes to create the executable and action it , has also improved , with this change  . 
  One more thing the line involved  in the make file reads as mentioned below . Instead of CC there is an LD. Nevertheless it worked , and I am happy about it . 
$boot_exe: boot$o	\$(LD) boot$o \$(STATIC_LDFLAGS) -static-libgcc $res $out$boot_exe_link	$mt_cmd
Regardsc.kannan

> Date: Fri, 9 Mar 2012 09:45:35 +0100
> Subject: Re: issues with exe file produced from Par-Packer-1.013 , on windows XP.?
> From: roderich.schupp@googlemail.com
> To: chandrashekaran_kannan@hotmail.com
> CC: par@perl.org
> 
> On Thu, Mar 8, 2012 at 21:30, chandrashekaran kannan
> <chandrashekaran_kannan@hotmail.com> wrote:
> > When the exe file is run
> >  on machines which do not have C compilers installed on them, it throws an
> > error hinting libgcc_s_dw2-1.dll is not found.
> > C:\temp\objdump -ax sample.exe | find "DLL"
> > ...
> >        DLL Name: libgcc_s_dw2-1.dll
> 
> That's the problem: the packed executable (actually a copy of
> myldr\boot.exe with
> some stuff appended) has been linked with libgcc*.dll.
> We don't do that on purpose, the MingW (GCC) toolchain does that implicitly
> (under certain conditions which seem to proliferate with any new
> version of GCC).
> The only way to solve the problem is to link statically with libgcc*.
> 
> Please try the following:
> 
> - find the following lines in myldr\Makefile.PL in the unpacked
> PAR-Packer tarball
> 
> $boot_exe: boot$o
>         \$(CC) boot$o \$(STATIC_LDFLAGS) $res $out$boot_exe_link
>         $mt_cmd
> 
>   and change them to
> 
> $boot_exe: boot$o
>         \$(CC) boot$o \$(STATIC_LDFLAGS)  -static-libgcc $res $out$boot_exe_link
>         $mt_cmd
> 
> - rebuild and reinstall PAR::Packer
> 
>   dmake clean
>   perl Makefile.PL
>   dmake
>   dmake install
> 
> - re-pack your script and try it out
> 
> Cheers, Roderich
 		 	   		  

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About