Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

Re: Packaging GUI application.

by Courage (Parson)
on Aug 25, 2004 at 20:43 UTC ( [id://385815]=note: print w/replies, xml ) Need Help??


in reply to Packaging GUI application.

I have own technique to solve same problem for me. It includes few steps:
  • substituting Dynaloader.pm and overloading "use.pm",
  • packaging number of library files into single archive, so that use module; will go to that archive
  • throwing away AutoLoad.pm for those packages
  • few other trivial steps to make stup "exe" which calls perl with a given script as parameter.

This way I ended up with about 10 DLLs (some more or less depending on actual modules usage) and about 5 auxiliary files needed to bootstrup my mechanic.
This is for Perl/Tk applications.

Starting from some moment I moved to Tcl::Tk module instead of Perl/Tk and quantity of files changed.

That said, I invented my own method in addition to PAR, perl2exe, and gmpassos's tinyperl.
Why?
PAR creates big forest in TEMP; at least this requires some space on HDD to write, yet there will be more and more garbage after few crashed invocations;
perl2exe is old unsupported and discouraged to use (AFAIK);
and can't comment on tinyperl, because just can't.
:)

Courage, the Cowardly Dog

Replies are listed 'Best First'.
Re^2: Packaging GUI application.
by Anonymous Monk on Aug 25, 2004 at 21:13 UTC
    Got code for this method? I'd like to see the evils of which you speak. Personally, I swear by PAR because it "just works" for Windows and Linux and I can clean up my own temp directory.

    Just pass the -M Tk switch to pp, and yes, your application may be around 1 MB for something as simple as a Windows autorun program, but the runtime is there, and it all just works.

    I suppose PAR is creating the files in %TEMP% only during development, not on a user's machine?

      You can download 1Mbyte example of my distribution at http://www.vkonovalov.ru/files-exchange/perl58tk84-for-cd.zip, it unpacks to 2Mbytes, and runs independent of existing Perl software on machine.

      Unpack it to some directory, and run "start.exe"

      Few comments:

      • index.txt is auxillary file for application itself, not for bootstrapping distro.
      • msvcrt.dll could be just removed for 99% of Windows computers already have it; only elder Windows95 w/o SR require it.
      • all perl-5.8.x+Tk84 library files live in modules/modules.pm.
      • No temporary files.

      In case there will be some kind of interest, I'll provide more detailed explanations, just let me know.
      However I don't think this will be the case.

      Courage, the Cowardly Dog

Re^2: Packaging GUI application.
by keszler (Priest) on Aug 26, 2004 at 15:34 UTC
    perl2exe old and unsupported? From it's homepage:
    # Jun 29 2004 Perl2Exe V8.40 for Perl 5.8.4 released # Feb 18 2004 Perl2Exe V8.10 for Perl 5.8.3 released # Feb 11 2004 Perl2Exe V8.00 for Perl 5.8.2 released

    The only time I needed support was about four years ago - the response was prompt and helpful.

      ok, it was "unsupported" in my mind, I did not check it for a long time...

      Sorry.

      Hmm, wait, what is the "buy now" button? It is not opensourced and no chance to fix a bug when something will be strangely working? (no 5.9.x support either, for same reason...)

      Ok, lemme stay on my old working scheme, where I know which worms will be and how to fight against them.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://385815]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others about the Monastery: (5)
As of 2024-03-29 10:34 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found