From: Axel <a99.googlegroups.a99 / dfgh.net>
Subject: Re: Tk on Windows and Mac OS X 10.6
Date: Thu, 18 Feb 2010 21:30:16 +0900
Message-ID: <1191f673-a6e5-4379-8d95-9e012665be3e / q16g2000yqq.googlegroups.com>
> In advance, I was unhappy to need to install TCL (~ 23 MB), but
> that was the only drawback. Installing ActiveTCL was without problems,
> and as far as I understand, the licence is very permissive, even for
> commercial use.  And I was glad to _easily_ be able to install
> additional TCL-libraries via "teacup", for example "plotchart", which
> enables me to easily plot simple graphs from within Ruby without
> having to deal with gnuplot.

On your environment only or machines under your control, it's no problem.
As you say (me too), it is the best way to use Ruby (and Ruby/Tk).
However, if you must run your application on other environment 
without proper version of Tcl/Tk, you may have some troubles.
I think that a monolithic tcltklib.so library is one of the solutions
to avoid such kind of troubles.
It doesn't replace current binary style of tcltklib.so on Ruby/Tk.
It is a new(?) binary style of tcltklib.so, which merges a Tcl/Tk
environment as a virtual file system.
When you load it on Ruby, you can use Ruby/Tk without installing Tcl/Tk.
It need not write files to the local disk excluding temporal DLL files 
to load.

Probably, the tool will contain a base tcltklib.so library, 
a work environment (a file tree), and commands for packing/unpacking.

# Maybe, I merge some codes to Ruby/Tk to support such feature.

When you want to use additional Tcl/Tk libraries, 
you need copy the libraries to the work environment and pack it to 
the "tcltklib.so" file.
To copy the libraries, you maybe able to use TEAcup.
And probably, you'll be able to test your application working with
the monolitic tcltklib.so by running it on the work environment.

# If it is available to pack Ruby binary and environment by similar
# way, we can get a single executable file include all environment.

> And, from the licences, would it be allowed to freely distibute these
> binaries?

Hmm..., I've not thought about the licenses.
Probably, it will depend on Tcl/Tk, Metakit, tclvfs, Tclkit (Starkit), 
libraries packed with, and so on.

# I'm sorry, if my poor english cannot explain exactly.
-- 
Hidetoshi NAGAI (nagai / ai.kyutech.ac.jp)