IDLE won't launch, and other frustrations

Tim Peters at
Wed Mar 24 03:18:31 CET 2004

[Michael A. Covington]
> On the trail of figuring out why IDLE won't launch, look at this:
> Python 2.3.3 (#51, Dec 18 2003, 20:22:39) [MSC v.1200 32 bit (Intel)]
> on win32
> Type "help", "copyright", "credits" or "license" for more information.
> >>> import Tkinter
> >>> Tkinter._test()
> Traceback (most recent call last):
>   File "<stdin>", line 1, in ?
>   File "C:\PYTHON23\lib\lib-tk\", line 3640, in _test
>     root = Tk()
>   File "C:\PYTHON23\lib\lib-tk\", line 1564, in __init__
> = _tkinter.create(screenName, baseName, className)
> _tkinter.TclError: Can't find a usable init.tcl in the following
> directories:
>     {C:\WN16\LIB\TCL7.6} {C:\WN16\LIB\TCL7.6} C:/WN16/LIB/tcl8.4
> C:/Python23/lib/tcl8.4 C:/lib/tcl8.4 C:/library
> This probably means that Tcl wasn't installed properly.
> >>>
> Here \WN16 is where *another* TCL/TK application *used* to reside.
> And the TCL stuff definitely *does* exist under
> C:\Python23\tcl\tcl8.4 (not lib\tcl8.4).
> By default does Python 2.3.3 install itself incorrectly???!!

No, it means Python is a good citizen but WN16 was a criminal <wink>.

Installing Python won't interfere with any other Tcl/Tk-using app on your
system, because Python is polite and considerate.

WN16 probably set an environment variable, or more than one, forcing every
Tcl/Tk on the box to use the old version WN16 installed.  That's anti-social
of it, but not Python's doing.  Do "set | sort" from a DOS box, and look for
envars with names starting with TCL or TK.  I'm betting you'll find at least
one, pointing to a directory under C:\WIN16.  If you do, get rid of it, and
then Tkinter should work fine.

More information about the Python-list mailing list