sl@0: Tcl 8.4 for Windows sl@0: sl@0: RCS: @(#) $Id: README,v 1.30.2.1 2005/07/29 03:50:51 mdejong Exp $ sl@0: sl@0: 1. Introduction sl@0: --------------- sl@0: sl@0: This is the directory where you configure and compile the Windows sl@0: version of Tcl. This directory also contains source files for Tcl sl@0: that are specific to Microsoft Windows. sl@0: sl@0: The information in this file is maintained on the web at: sl@0: http://www.tcl.tk/doc/howto/compile.html#win sl@0: sl@0: The above URL includes a lengthy discussion of compiler macros necessary sl@0: when compiling Tcl extensions that will be dynamically loaded. sl@0: sl@0: 2. Compiling Tcl sl@0: ---------------- sl@0: sl@0: In order to compile Tcl for Windows, you need the following: sl@0: sl@0: Tcl 8.4 Source Distribution (plus any patches) sl@0: sl@0: and sl@0: sl@0: Visual C++ 5 or newer sl@0: sl@0: or sl@0: sl@0: Msys + Mingw sl@0: sl@0: http://prdownloads.sourceforge.net/tcl/msys_mingw8.zip sl@0: sl@0: This Msys + Mingw download is the minimal environment sl@0: needed to build Tcl/Tk under Windows. It includes a sl@0: shell environment and gcc. The release is designed to sl@0: make it as easy a possible to build Tcl/Tk. To install, sl@0: you just download the zip file and extract the files sl@0: into a directory. The README.TXT file describes how sl@0: to launch the msys shell, you then run the configure sl@0: script in the tcl/win directory. sl@0: sl@0: In practice, this release is built with Visual C++ 6.0 and the TEA sl@0: Makefile. sl@0: sl@0: If you are building with Visual C++, in the "win" subdirectory of the sl@0: source release, you will find "makefile.vc". This is the makefile for sl@0: the Visual C++ compiler and uses the stock NMAKE tool. Detailed sl@0: directions for using it, are in the comments of "makefile.vc". A quick sl@0: example would be: sl@0: C:\tcl_source\win\>nmake -f makefile.vc sl@0: sl@0: There is also a Developer Studio workspace and project file, too, if you sl@0: would like to use them. sl@0: sl@0: If you are building with Msys or Cygwin, you can use the configure script sl@0: that lives in the win subdirectory. The Msys or Cygwin based configure/build sl@0: process works just like the UNIX one, so you will want to refer to sl@0: ../unix/README for available configure options. An error will be sl@0: generated by the configure script if you try to compile Tcl with sl@0: the Cygwin version of gcc instead of the Mingw version. Check your sl@0: PATH if you get this error. Be aware that gcc will generate sl@0: lots of compile time warnings when building Tcl. Warnings are sl@0: not errors, so please don't file a bug report about them. sl@0: sl@0: In order to use the binaries generated by these makefiles, you will sl@0: need to place the Tcl script library files someplace where Tcl can sl@0: find them. Tcl looks in one of following places for the library files: sl@0: sl@0: 1) The path specified in the environment variable "TCL_LIBRARY". sl@0: sl@0: 2) Relative to the directory containing the current .exe. sl@0: Tcl will look for a directory "..\lib\tcl8.4" relative to the sl@0: directory containing the currently running .exe. sl@0: sl@0: Note that in order to run tclsh84.exe, you must ensure that tcl84.dll sl@0: and tclpip84.dll are on your path, in the system directory, or in the sl@0: directory containing tclsh84.exe. sl@0: sl@0: Note: Tcl no longer provides support for Win32s. sl@0: sl@0: 3. Test suite sl@0: ------------- sl@0: sl@0: This distribution contains an extensive test suite for Tcl. Some of sl@0: the tests are timing dependent and will fail from time to time. If a sl@0: test is failing consistently, please send us a bug report with as much sl@0: detail as you can manage. Please use the online database at sl@0: http://tcl.sourceforge.net/ sl@0: sl@0: In order to run the test suite, you build the "test" target using the sl@0: appropriate makefile for your compiler.