Tk 4.1 for Windows

by Scott Stanton
Sun Microsystems Laboratories
scott.stanton@eng.sun.com

SCCS: @(#) README 1.11 96/04/12 16:41:48

1. Introduction
---------------

This is the directory where you configure and compile the Windows
version of Tk.  This directory also contains source files for Tk
that are specific to Microsoft Windows.  The rest of this file
contains information specific to the Windows version of Tk.

2. Distribution notes
---------------------

Tk 4.1 for Windows is distributed in binary form in addition to the
common source release.  The binary distribution is a self-extracting
archive with a built-in installation script.

Look for the binary release in the same location as the source release
(ftp.smli.com:/pub/tcl or any of the mirror sites).  For most users,
the binary release will be much easier to install and use.  You only
need the source release if you plan to modify the core of Tcl, or if
you need to compile with a different compiler.  With the addition of
the dynamic loading interface, it is no longer necessary to have the
source distribution in order to build and use extensions.

3. Compiling Tk
----------------

In order to compile Tk for Windows, you need the following items:

	Tcl 7.5 Source Distribution (plus any patches)
	Tk 4.1 Source Distribution (plus any patches)

	The latest Win32 SDK header files

	Borland C++ 4.5/5.0 (32-bit compiler)
	  or
	Visual C++ 2.x/4.0
	

In the "win" subdirectory of the source release, you will find two
files called "makefile.bc" and "makefile.vc".  These are the makefiles
for the Borland and Visual C++ compilers respectively.  You should
copy the appropriate one to "makefile" and update the paths at the top
of the file to reflect your system configuration.  Now you can use
"make" (or "nmake" for VC++) to build the tk libraries and the wish
executable.

In order to use the binaries generated by these makefiles, you will
need to place the Tk script library files someplace where Tk can
find them.  Tk looks in one of two places for the library files:

	1) The environment variable "TK_LIBRARY".
	2) Relative to the directory containing the Tk DLL.
	    Tk will look for a directory "..\lib\tk4.1" relative to the
	    directory containing the tk41.dll loaded by the currently running
	    application.

Note that in order to run wish41.exe, you must ensure that tcl75.dll
(and tcl1675.dll under Win32s), tk41.dll are on your path, or in the
directory containing wish41.exe.

4. Test suite
-------------

The Windows version of Tk does not pass many of the tests in the test
suite.  This is primarily due to dependencies in the test suite on the
size of particular X fonts, and other X related features.  We will be
working to develop a more general test suite for Tk under Windows, but
for now, you will not be able to pass many of the tests.

5. Known Bugs
-------------

Here is the current list of known bugs/missing features for the
Windows beta version of Tk:

- There is no support for custom cursors/application icons.
- Stippling of arcs isn't implemented yet.
- Some "wm" functions don't map to Windows and aren't implemented.
- There is no support for the option database yet.
- Under Win32s, you can only start one instance of Wish at a time.
- Traversing the items in a menubar causes the titlebar of the window
  to flash.
- Color management on some displays doesn't work properly resulting in
  Tk switching to monochrome mode.
- Send and winfo interps are not currently supported

If you have comments or bug reports for the Windows version of Tk,
please direct them to:

Scott Stanton
scott.stanton@eng.sun.com

or post them to the newsgroup comp.lang.tcl.
