Re: Hello! What can I do with wxPerl+Windows right now?

[email protected] (Darren Harwood) Tue, 17 Dec 2024 10:09:49 +0000
Newsgroups perl.wxperl.users
Message-ID <[email protected]>
--Apple-Mail=_3761E160-512D-4E6B-BF26-59FE4564FA81
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

hi all,

when i used to do this......i'm thinking 2018, my process was this:

1. windows OS and installed citrusperl. why citrusperl? because i could =
never get the wx widgets and alien bits to build on my dev box - and =
yes, i wasted days trying.

2. normal processes to develop the perl script, wxFormBuilder tool to =
help create the gui xrc, coz that's how i liked to load the gui =
components - but anything (glade, handcrafting, etc) will do. make sure =
the script runs as expected. i had some fairly cool multi-threaded apps =
running and they are (surprisingly) still in daily use at a big =
customer!

3. to build the EXE, you need to launch a citrus terminal as =
administrator (important but afraid I don't recall why), like this:
C:\citrusPerl\perl\bin\citrusterm.bat

then, to build with an annoying popup command prompt, do this:
wxpar --gui -o Migration.exe Migration_tool.pl  =20

or, to build without an annoying popup command prompt, do this:
wxpar -o Migration.exe Migration_tool.pl     =20

hope that's useful - or at least a pointer to the things we need to =
bring up to date - or a list of what not to do? :)

cheers,
Darren




On 16 Dec 2024, at 08:12, Brett Estrade <[email protected]> wrote:

Hi, sorry for the late reply. Thank you for the replies.

I guess what I am suggesting is that there is a real need for well =
documented, end-to-end workflows that are platform specific. My need =
happens to be for Windows. A Mac workflow would be great, too.

What does this look like to me? It'd cover:

1. installation steps of a development environment on the OS (e.g., =
Windows)
2. some notes about dev workflow (e.g., I like to start with wxGlade =
that dumps Perl, but there might be a better way; I can get this working =
on Ubuntu and Windos under Mobaxterm's installed Perl packages - which =
are cygwin based)
3. finally, the actual steps of packaging this up for distribution - be =
it .exe, .msi, etc (for Windows is my main interest)

My Problem is conceptually, I understand all the bits and pieces but =
always fall flat when it's time to roll a distro. I want to generate a =
Windows distribution that is just a .exe and that I can distribute as a =
single file. A .msi or installation bundle that handles everything would =
also be good, I just have no idea how to generate it.

I guess I just need some major hand holding initially; but once I figure =
it out I am happy to document it and maybe even share any tools I create =
to help myself with the local process.

Thanks!
Brett

On Sat, Nov 23, 2024 at 3:34=E2=80=AFPM Johan Vromans =
<[email protected] <mailto:[email protected]>> wrote:
> On Fri, 22 Nov 2024 10:46:39 -0500, Don Peddicord wrote:
>=20
> > The project I am
> > on created a wrapper for the Perl interpreter which limited its =
execution
> > to only the code we provide as part of our application.
>=20
> I have a similar approach for my ChordPro tool based on Oliver
> Betz' portable perl loader as used in the standalone exiftool program.
>=20
> Basically I let the PAR packager collect everything needed, then =
unpack the
> package to create a file hierarchy, add special libraries and create =
an
> installer (InnoSetup for Windows, DMG for macOS).
>=20
> There are several tricks involved to patch/relocate dynamic libraries =
to
> make sure the program will only use the packaged libraries.
>=20
> =46rom the perspective of the end user it is a single thing that gets
> installed, and a single desktop icon to click to start the program.
>=20
> https://www.chordpro.org <https://www.chordpro.org/>
> https://oliverbetz.de/pages/Artikel/ExifTool-for-Windows



--
This email message is for the sole use of the intended recipient(s) and =
may contain confidential and privileged information. Any unauthorized =
use or disclosure is prohibited. If you are not the intended recipient, =
please contact the sender by reply email and destroy all copies of the =
original message. Thank you.


--Apple-Mail=_3761E160-512D-4E6B-BF26-59FE4564FA81
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"content-type" content=3D"text/html; =
charset=3Dutf-8"></head><body style=3D"overflow-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;">hi =
all,<div><br></div><div>when i used to do this......i'm thinking 2018, =
my process was this:</div><div><br></div><div>1. windows OS and =
installed citrusperl. why citrusperl? because i could never get the wx =
widgets and alien bits to build on my dev box - and yes, i wasted days =
trying.</div><div><br></div><div>2. normal processes to develop the perl =
script, wxFormBuilder tool to help create the gui xrc, coz that's how i =
liked to load the gui components - but anything (glade, handcrafting, =
etc) will do. make sure the script runs as expected. i had some fairly =
cool multi-threaded apps running and they are (surprisingly) still in =
daily use at a big customer!</div><div><br></div><div>3. to build the =
EXE, you need to launch a citrus terminal as administrator (important =
but afraid I don't recall why), like =
this:</div><div>C:\citrusPerl\perl\bin\citrusterm.bat</div><div><br></div>=
<div>then, to build with an annoying popup command prompt, do =
this:</div><div>wxpar --gui -o Migration.exe Migration_tool.pl =
&nbsp;&nbsp;</div><div><br></div><div>or, to build without an annoying =
popup command prompt, do this:</div><div>wxpar -o Migration.exe =
Migration_tool.pl &nbsp; &nbsp; &nbsp;</div><div><br></div><div>hope =
that's useful - or at least a pointer to the things we need to bring up =
to date - or a list of what not to do? =
:)</div><div><br></div><div>cheers,</div><div>Darren</div><div><br></div><=
div><br></div><div><br =
id=3D"lineBreakAtBeginningOfMessage"><div><br><div>On 16 Dec 2024, at =
08:12, Brett Estrade &lt;[email protected]&gt; wrote:</div><br =
class=3D"Apple-interchange-newline"><div><div dir=3D"ltr"><div>Hi, sorry =
for the late reply. Thank you for the =
replies.</div><div><br></div><div>I guess what I am suggesting is that =
there is a real need for well documented, end-to-end workflows that are =
platform specific. My need happens to be for Windows. A Mac workflow =
would be great, too.</div><div><br></div><div>What does this look like =
to me? It'd cover:<br><br></div><div>1. installation steps of a =
development environment on the OS (e.g., Windows)<br></div><div>2. some =
notes about dev workflow (e.g., I like to start with wxGlade that dumps =
Perl, but there might be a better way; I can get this working on Ubuntu =
and Windos under Mobaxterm's installed Perl packages - which are cygwin =
based)<br></div><div>3. finally, the actual steps of packaging this up =
for distribution - be it .exe, .msi, etc (for Windows is my main =
interest)</div><div><br></div><div>My Problem is conceptually, I =
understand all the bits and pieces but always fall flat when it's time =
to roll a distro. I want to generate a Windows distribution that is just =
a .exe and that I can distribute as a single file. A .msi or =
installation bundle that handles everything would also be good, I just =
have no idea how to generate it.</div><div><br></div><div>I guess I just =
need some major hand holding initially; but once I figure it out I am =
happy to document it and maybe even share any tools I create to help =
myself with the local =
process.<br></div><div><br></div><div>Thanks!<br></div><div>Brett<br></div=
></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" =
class=3D"gmail_attr">On Sat, Nov 23, 2024 at 3:34=E2=80=AFPM Johan =
Vromans &lt;<a href=3D"mailto:[email protected]" =
target=3D"_blank">[email protected]</a>&gt; =
wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px =
0px 0px 0.8ex;border-left:1px solid =
rgb(204,204,204);padding-left:1ex">On Fri, 22 Nov 2024 10:46:39 -0500, =
Don Peddicord wrote:<br>
<br>
&gt; The project I am<br>
&gt; on created a wrapper for the Perl interpreter which limited its =
execution<br>
&gt; to only the code we provide as part of our application.<br>
<br>
I have a similar approach for my ChordPro tool based on Oliver<br>
Betz' portable perl loader as used in the standalone exiftool =
program.<br>
<br>
Basically I let the PAR packager collect everything needed, then unpack =
the<br>
package to create a file hierarchy, add special libraries and create =
an<br>
installer (InnoSetup for Windows, DMG for macOS).<br>
<br>
There are several tricks involved to patch/relocate dynamic libraries =
to<br>
make sure the program will only use the packaged libraries.<br>
<br>
=46rom the perspective of the end user it is a single thing that =
gets<br>
installed, and a single desktop icon to click to start the program.<br>
<br>
<a href=3D"https://www.chordpro.org/" rel=3D"noreferrer" =
target=3D"_blank">https://www.chordpro.org</a><br>
<a href=3D"https://oliverbetz.de/pages/Artikel/ExifTool-for-Windows" =
rel=3D"noreferrer" =
target=3D"_blank">https://oliverbetz.de/pages/Artikel/ExifTool-for-Windows=
</a><br>
</blockquote></div><div><br clear=3D"all"></div><br><span =
class=3D"gmail_signature_prefix">-- </span><br><div dir=3D"ltr" =
class=3D"gmail_signature"><div dir=3D"ltr">This email message is for the =
sole use of the intended recipient(s) and may contain confidential and =
privileged information. Any unauthorized use or disclosure is =
prohibited. If you are not the intended recipient, please contact the =
sender by reply email and destroy all copies of the original message. =
Thank you.<br></div></div>
</div></div><br></div></body></html>=

--Apple-Mail=_3761E160-512D-4E6B-BF26-59FE4564FA81--