Version 1 of Building Tcl/Tk with Mingw

Updated 2005-10-12 21:32:43

Mo Dejong 10-12-2005

This page describes how to build Tcl/Tk under Windows using the Msys and Mingw packages. Mingw is a gcc port for Windows that can be used to build native Win32 applications and dlls. Msys is a bash shell ported to Windows that is used to run Tcl's configure script. This page does not describe how to build Tcl/Tk with VC++, although that build environment is also supported. It may possible to build Tcl/Tk with other compilers like the Borland or Cygwin, but these tools are not well supported and will require some effort to get everything working.

Building Tcl/Tk 8.4.11, the current stable release.

First (Downloads):

  1. Go to http://sourceforge.net/project/showfiles.php?group_id=10894
  2. Download msys_mingw8.zip (or newer version)
  3. Download tcl8411-src.zip
  4. Download tk8411-src.zip

Second (Unzip):

  1. Unzip msys_mingw8.zip to whereever you want to keep it (I put mine on the root of the C drive.) It will create a top level directory called msys and a directory tree underneath containing all necessary files for msys/mingw operation.
  2. Create a src directory somewhere convenient. I used /src (C:\msys\src if looking at it from outside msys.)
  3. Unzip tcl8411-src.zip into the src directory
  4. Unzip tk8411-src.zip into the src directory

Third (Build Tcl):

  1. mkdir /build
  2. mkdir /build/tcl
  3. cd /build/tcl
  4. /src/tcl8.4.11/win/configure --prefix=/opt/tcl
  5. make
  6. make install

Fourth (Build Tk):

  1. mkdir /build/tk
  2. cd /build/tk
  3. /src/tk8.4.11/win/configure --prefix=/opt/tcl --with-tcl=/build/tcl
  4. make
  5. make install

NOTE: At this point Everything is installed and should be working. You could delete /build and /src if you wanted to. You will find it all in /opt/tcl (C:\msys\opt\tcl). Run Tcl from the msys shell by starting the tclsh84 shell found in /opt/tcl/bin. Run Tk from the msys shell by starting the wish84 shell found in /opt/tcl/bin.

See also mingw Building TclBlend with msys_mingw Building Tcl under cygwin with MINGW