Tcl7.5a2 and Tk4.1a2 on VMS
angel@flipper.rsmas.miami.edu
Introduction
A port of Tcl7.5a2 and Tk4.1a2 is now available for VMS on both
Alphas and Vaxes. Shareable images of the Tcl and Tk
libraries are built by default and tclsh and wish
both link against them. Included in this port is an implementation of
the new Tcl command load, the command used to
dynamically load extensions. The BLT library is included and built as a
loadable module. Minimal testing was done on this port of Tcl. The
widget demo runs as does a medium-sized real-time data
display application written locally.
Tcl7.5/Tk4.1 is the first release that runs on Unix, MacOS and Windows.
The VMS port made some minor patches to the core source. Some of these
patches will not be needed in some upcoming release of Tcl/Tk. The core
files need not be patched if the modified files are separately maintained.
It is hoped that John Ousterhout will integrate the patches into
the official release.
How to Get It
Using anonymous FTP, connect to
mango.rsmas.miami.edu and cd
to the directory /pub/VMS-tcl/tcl7.5-tk4.1. The files
tcl.diffs and
tk.diffs are the patch files
that need to be applied to a stock
Tcl7.5a2 and
Tk4.1a2 source directory. The file
tcl-vms.tgz, a tar file compressed
by GNU zip, contains the files that implement the VMS specific code for Tcl.
The file
tk-vms.tgz, a tar file compressed by GNU zip,
contains the files that implement the VMS specific code for TK. Both of
the tar files should be unpacked in the top-level source directory
for both Tcl7.5a2 and Tk4.1a2.
A complete source distribution is also available. Get the files
tcl-src.tgz and
tk-src.tgz. The VMS-specific files are included in the latter two files.
Building From Sources
To build the release from sources, you'll have to get my port of
the BSD pmake program available in
mango.rsmas.miami.edu.
The file
pmake-alpha.tgz is the Alpha version and
pmake-vax.tgz is the Vax version. Sorry about using
this version of make but that is what I use daily on
both Unix and VMS. If someone converts makefile.vms
to an MMS makefile, I'll include it in the distribution and try to
keep it up to date.
Note that the DEC C compiler was used to build this release not the
VAX C or GNU C compiler. The include files are all different for each
compiler and it was a major pain in the butt to maintain. If you don't
have this compiler I hope the binary release is sufficiently useful.
Binary-only Files
Binary-only distributions are also available. Included are only the
executables for tclsh and wish, the Tcl
and Tk libraries in .olb and shareable images format,
the Tcl/Tk library files and a command procedure that defines the
needed logical names and symbols to use Tcl/Tk on VMS.
For the Alpha binary-only distribution, fetch the file
alpha-bin.tgz. Fetch
vax-bin.tgz for the Vax version. Create a new directory and extract
the files from the compressed tar file. Edit the file
[.com]tcl-tk-setup.com and run that command procedure
to define all needed logical names.
Running
The logical names TCLSHR and TKSHR need to
point to the location where tclshr.exe and tkshr.exe
are stored. The logical names TCL_LIBRARY and
TK_LIBRARY need to point to the Tcl and Tk run-time library
files. The value of these logical names need to be specified in Unix
syntax, i. e. /dev/dir/tcl75/library
. They are specified
in this format to minimize the number of changes to the core files.
Bugs
I'm very interested in hearing about bugs in this port. Unfortunately,
I lost some mail files with bug reports from previous ports. Please
mail me again if those bugs are persistent.