[Richard Suchenwirth] 2007-10-11 - Successor to Windows 3.11. Even older (three years) than [Windows 98], but still going strong in some places, e.g. my ancient 200MHz 48MB box at home - where most of my many hundreds of fun projects were made... From 8.5, W95 is no longer supported by [Tcl]/[Tk]. Here's my travelogue how I got Tcl/Tk 8.5b1 built and running, with mingwin/msys, with only two lines of code changed :^) Building [Tcl] 8.5b1 on W95 SE almost worked... just in ''make install'' I got Installing time zone data /bin/sh: ./tclsh85.exe: Permission denied make: *** [install-tzdata] Error 126 and a pop-up which roughly translated says missing Export-USER32.DLL:MsgWaitForMultipleObjectsEx So it's true when they say W95 is no longer supported... :( The sore spot is $ grep -n MultipleObjectsEx *.c tclWinNotify.c:475: result = MsgWaitForMultipleObjectsEx(1, &tsdPtr->event, timeout, [GPS] suggested to try it without the "Ex" - this lets ''make install'' come through. ''make test'' still running (hey, this old box has only 200MHz...) In fact, it seems to hang after ---- Result was: timeout {} foobarbaz timeout ---- Result should have been (exact matching): {} timeout foobarbaz timeout ==== io-6.56 FAILED A more patient retry shows that ''io.test'' just takes very long, but ultimately terminates, and lets other tests carry on. Here's one failed test which I'm not so sure of (uppercase drive letters seem quite Win-idiomatic to me): ==== filesystem-1.38 file normalisation with volume relative FAILED ==== Contents of test case: set path "[string range [lindex $drives 0] 0 1]foo" set dir [pwd] cd [lindex $drives 1] set res [file norm $path] cd $dir set res ---- Result was: C:/foo ---- Result should have been (exact matching): c:/foo ==== filesystem-1.38 FAILED Configuring Tk went well, in ''make'' I spotted a warning: D:\MSYS\src\tk8.5b1\win\tkWinEmbed.c:49: warning: 'EmbeddedEventProc' declared ` static' but never defined A bigger problem was another Win symbol, which I just commented out in tkWinX.c, near the end: /* SendInput(1, &inp, sizeof(inp)); */ After this, win85.exe does not come up, but tclsh85.exe with [package require] [Tk] does, and responds as I'd expect... So yes, there's even some hope for ninety-fivers... :^) Not all is well, though. A [canvas] acts and reacts decently, while a [text] widget reacts to insertions from console only after touching it, and to typing in itself very sloppy. So there are still deeper problems. ---- Oh, and besides ActiveTcl 8.4, some things like [eTcl] 1.0-rc23 and [tcltcc] run right out of the binary box here. ---- | [Category Operating System] |