[plt-scheme] small, static, mzscheme executable?

From: Eli Barzilay (eli at barzilay.org)
Date: Tue Jan 20 16:44:42 EST 2009

On Jan 20, Mike Eggleston wrote:
> Morning,
> In the mzscheme distribtion is there a single, small, static
> executable that I can copy to my various platforms? My interest in
> this question is deciding if mzscheme is a candidate for developing
> a management system like cfengine(8). My platforms include windows
> xp, windows vista (32 and 64), mac os x, flavors of linux, and
> flavors of unix.
> If there is a small executable, but no static executable, is there a
> procedure in mzscheme to create a static executable? I'm trying to
> limit what I install on these various boxes.

Not directly an answer, but I think that it will be much easier to
just use the complete directories.  Some related details and comments:

* The OSX installer is essentially a directory that you can drag and
  drop anywhere in the system.  The Windows installer does the usual
  start menu shortcut, and various registry keys -- but ignoring
  these, the resulting directory can also be moved anywhere you want.
  The Unix installers give you a choice for a "unix-style"
  installation (spread according to the FHS) or a single directory
  which can be moved around.

  -- The bottom line is that you can get a single directory for each
     platform that can be placed anywhere in the system.

* Since you're interested in MzScheme only, things are even easier.
  (For example, the Windows installer is basically just creating the
  directory and does none of the rest.)

* The executables do rely on some usual C libraries (but it seems that
  you're not concerned about that).

* There shouldn't be any modifications on any other part of the
  system.  The only possible exception is the users $HOME/.plt-scheme
  (different directory on OSX/Windows) which is used for things like
  preferences and planet.  Given no gui, and if you won't use planet,
  you're likely not going to get anything there too.

* As another point of reference, you can see our "pre-installers"
  (they are available for the nightly builds at pre.plt-scheme.org,
  and I can also make the pre-installers of the official release
  available).  These are all tgz archives of the PLT trees that can
  simply work anywhere you drop them.  (They are one step before last,
  when they're converted into the various installers.)

* Note that the MzScheme distribution is intended for a server
  situation and not much else.  It will be a good idea to have the
  normal installation on the machine you actually use.

* (BTW, I used mzscheme several times to distribute batch jobs to a
  compute cluster -- and things tend to be extremely easy to set up.)

          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                  http://www.barzilay.org/                 Maze is Life!

Posted on the users mailing list.