Before support for Mac OS Classic was dropped in Tcl/Tk 8.5, I was a maintainer for Mac OS 9 code in Tcl and Tk; and I have ported/updated some standard Tcl extensions to the Mac.
I have also provided Mac Classic Tcl/Tk binary releases from version 8.3.2p1 till 8.4.2:
These legacy releases are still available as dowloadable installers for binaries and sources in the file area of the tcl sourceforge site http://sourceforge.net/projects/tcl/.
There are several versions of the installer for each release:
- runtime-only
- appropriate for most users (~5M).
- full
- with additional binaries, projects and full sources (~20M).
- active web
- download-on-demand version of the full installer, latest release only (0.5M + up to ~21M).
Available Releases:
- 8.4.2
- MacTclTk_8.4.2_RuntimeInstl.bin - MacTclTk_8.4.2_FullInstall.bin - MacTclTk_8.4.2_WebInstall.bin
- 8.4.1
- MacTclTk_8.4.1_RuntimeInstl.bin - MacTclTk_8.4.1_FullInstall.bin
- 8.3.5
- MacTclTk_8.3.5_RuntimeInstl.bin - MacTclTk_8.3.5_FullInstall.bin
- 8.3.4
- TclTk_8.3.4_RuntimeInstall.bin - TclTk_8.3.4_FullInstall.bin
- 8.3.3
- TclTk_8.3.3_RuntimeInstall.bin - TclTk_8.3.3_FullInstall.bin
- 8.3.2
- TclTk_8.3.2p1_RuntimeInstall.bin
Mac OS Classic Tcl/Tk Resources on this Site
Tcl/Tk Core
All changes necessary for Mac Classic development are checked into the sourceforge
cvs server, both on core-8-3-1-branch and the HEAD.
Tcl/Tk Extensions
Note: While all binary extensions below are linked with Tcl & Tk stub libraries,
on PPC they will only run on Mac Tcl/Tk 8.3.2p1 or later due to changes
in the PPC runtime libraries for CodeWarrior Pro6. The binaries might work on earlier Tcl versions if you put a copy of the Pro6 runtime libraries in the CFM search path (no guarantees...).
Additionally, any extension using Tk stubs will not work at all on earlier versions, as Tk stubs on the Mac had been very badly
broken before version 8.3.2p1.
SampleExtension 0.2.1
Update of Jim Ingham's Mac port of sampleextension-0.2 to work with Mac Tcl/Tk 8.3.2p1 or later and CodeWarrior Pro6.
This is a sample project illustrating how to correctly compile and link (with stub libraries) a Tcl extension on the Mac.
Itcl/Itk 3.1 & IWidgets 3.0
Update of Jim Ingham's Mac port of Itcl3.1 to work with Mac Tcl/Tk 8.3.2p1 or later and CodeWarrior Pro6.
A Binary distribution and Sources are available.
TclX 8.3
A port of TclX (Extended Tcl) to the Mac (Mac Tcl/Tk 8.3.2p1 or later and CodeWarrior Pro6).
Note that most thinks not working in the Windows port of TclX won't work on the Mac either, additionally the socket routines have not been ported to the Mac. Appropriate error messages are returned for unimplemented features however.
This includes patches to the tracing code by Vince Darley that are needed for Alpha's procedure tracing code.
A Binary distribution and Sources are available.
tcLex 1.2a1
A build of Frédéric Bonnet's excellent (f)lex like (but tcl syntax using) lexer tcLex for Mac Tcl/Tk 8.3.2p1 or later, built with CodeWarrior Pro6.
Nothing fancy involved here, this is just my sampleextension above adapted for tcLex.
A Binary of the extension and an archive of the mac specific Sources are available, or you can browse the sources.
The archive contains a CodeWarrior Pro6 project as exported xml, a binary project is also available.
TclKit
Updated: A Mac build of Jean-Claude Wippler's TclKit based on the TclKit HEAD (8.4-36) and the Tcl/Tk HEAD (8.4a5) as of 20/5/02.
Note that incrtcl support is disabled for now, as I haven't had time to update my incrtcl mac port for 8.4 yet.
Both a static and a shared build are available, these are FAT builds (i.e. containing both 68k and PPC code), tested successfully on a PPC mac with OS 9.1 and a 68k mac with OS 7.5.5 (with appearance mgr installed).
The static build is smaller and doesn't need CFM68k on 68k but cannot load dynamic libraries on either PPC or 68k, whereas the shared build can. However, packaging mac dynamic libraries in a scripted document will not work currently as they need to have a resource forks to be loadable.
All other functionality is there, which makes single file tk apps on the mac possible, e.g. sdx and wikit work fine on the mac.
Also available at tclkit are changed/new projects in xml form and new files for tclkit/mac that are needed to get all this to work. (all text files are latin1 encoded with unix line-endings, and need conversion to macroman before using on a mac, but are good to be checked into cvs from a unix box as is)
For convenience, I've also posted a full source archive containing tclkit, metakit and zlib sources and projects used to make the builds above (in the suggested filesystem layout). To build tclkit yourself, you'll also need the current HEAD of the tcl, tktoolkit and tclvfs projects from sourceforge. The tclkit & metakit CW projects assume that you have two global sourcetrees '{TclTk8.4}' and '{Tcl}' pointing at your 'Tcl/Tk 8.4 Folder' (as setup by tcl/mac/tcltkMacBuildSupport.sea.hqx) and a global sourcetree '{TclVFS}' pointing at the toplevel 'tclvfs' directory.