Re: statically linked Strawberry Perl for use with PerlApp?

[email protected] Mon, 23 Jun 2014 20:47:56 +1000
Newsgroups perl.win32.vanilla
Message-ID <0A5CCEE03D144542B73F1DDC5A8636E2@OwnerPC311012>
-----Original Message----- 
From: Robert Eden

> Is there any documentation on compiling my own version of Strawberry?  I 
> don't see any source code mentioned on the web page.

Well - you could just build your own perl from source using (say) the 
compiler and dmake that shipped with Strawberry.

You just grab the official perl 5.20.0 source, put your strawberry/c/bin 
folder at the beginning of the PATH, edit the (largely self-documenting) 
win32/makefile.mk appropriately, then cd to that win32 folder and run:
dmake
dmake test
dmake install

Attached is the win32/makefile.mk I've just used to build a 64-bit static 
perl-5.20.0 using Strawberry Perl-5.20.0 compiler (64-bit gcc-4.8.2).

It installs perl into C:\_64\static_perl520_482. (Amend it if you want to 
install perl elsewhere.)
It specifies that the compiler is in C:\_64\strawberry5.20.0\c (Amend that 
if it's not correct.)
And it specifies an EXTRALIBDIRS setting that's incorrect for you. You'll 
want to set it to something like:

EXTRALIBDIRS    *= C:\_64\strawberry5.20.0\c\x86_64-w64-mingw32\lib 
C:\_64\strawberry5.20.0\c\lib\gcc\x86_64-w64-mingw32\4.8.2

(depending upon where those folders actually are on your machine).

Apart from that, it should be right to go for you.
There were a few (three, I think) test script failures during 'dmake test' 
.... nothing to worry about.

It seems to install  dynamic perl.exe, perl5.20.0.exe and wperl.exe (and 
perl520.dll) along with a (large) static perl executable called 
perl-static.exe.
So it's the perl-static.exe you'll want to be using.
I've no idea what sort of mileage you'll get out of that ;-)

And, of course, FAIK, there could already be a static Strawberry perl 
available somewhere (or kmx might even be busy building one for you right 
now.)

Cheers,
Rob
makefile.mk (application/octet-stream, 51.2 KB) - not displayed