This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: Installer misplaces tcl library
Type: Stage:
Components: IDLE Versions: Python 2.3
process
Status: closed Resolution: works for me
Dependencies: Superseder:
Assigned To: Nosy List: loewis, tim.peters, wswong
Priority: normal Keywords:

Created on 2004-03-25 05:55 by wswong, last changed 2022-04-11 14:56 by admin. This issue is now closed.

Messages (5)
msg20303 - (view) Author: WS Wong (wswong) Date: 2004-03-25 05:55
Python 2.3.3 on Windows 2000 Professional
-------------------------------------------
Could not start IDLE after installation of Python in 
C:\WSPrograms\Python23

Went to C:\WSPrograms\Python23\Lib\idlelib and from 
the command line typed
C:\WSPrograms\Python23\python idle.py

The following traceback obtained:

C:\WSPrograms\Python23
\Lib\idlelib>c:\wsprograms\python23\python idle.py
Traceback (most recent call last):
  File "idle.py", line 23, in ?
    idlelib.PyShell.main()
  File "C:\WSPrograms\Python23\lib\idlelib\PyShell.py", 
line 1269, in main
    root = Tk(className="Idle")
  File "C:\WSPrograms\Python23\lib\lib-tk\Tkinter.py", 
line 1564, in __init__
    self.tk = _tkinter.create(screenName, baseName, 
className)
_tkinter.TclError: Can't find a usable init.tcl in the 
following directories:
    {C:\WSPrograms\ruby167ms\tcl\lib\tcl8.3} 
{C:\WSPrograms\ruby167ms\tcl\lib\tc
l8.3} C:/WSPrograms/ruby167ms/tcl/lib/tcl8.4 
c:/wsprograms/python23/lib/tcl8.4 c
:/wsprograms/lib/tcl8.4 c:/lib/tcl8.4 
c:/wsprograms/library c:/library c:/../tcl
8.4.3/library

Looking at the directories that was installed, 
I found that the tcl8.4 was actually located in
C:\WSPrograms\Python23\tcl\tk8.4
which was never on the search path.

After I copied the tcl8.4 directory to  
C:\WSPrograms\Python23\Lib
and run the commands again, it worked. Not sure what 
other implications this will cause 
but at least I have IDLE running again. 
msg20304 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2004-03-29 22:26
Logged In: YES 
user_id=21627

Have you set the TCL_LIBRARY environment variable? If so,
you should unset it. If you cannot unset it, you are on your
own - as a system administrator, by setting this variable,
you express the desire to use a different Tcl installation
(apparently the one that comes with Ruby), and then it is
your responsibility to make this setting work.
msg20305 - (view) Author: Tim Peters (tim.peters) * (Python committer) Date: 2004-03-29 22:32
Logged In: YES 
user_id=31435

This is almost certainly Ruby's "fault" -- the Ruby Windows 
installer does set environment variables forcing every app to 
try using Ruby's version of Tcl/Tk.  Get rid of the Ruby 
envars, and IDLE should work fine.
msg20306 - (view) Author: WS Wong (wswong) Date: 2004-03-30 01:33
Logged In: YES 
user_id=868242

Thanks. You are right. Deleting Ruby and getting rid of the tcl 
environment variable worked. Didn't think that would have 
affected the search path, but apparently it did.
msg20307 - (view) Author: Tim Peters (tim.peters) * (Python committer) Date: 2004-03-30 02:04
Logged In: YES 
user_id=31435

You didn't need to delete Ruby; just getting rid of the Tcl/Tk 
envars would have been enough.  I'm not sure why Ruby sets 
them to begin with (and you've noticed that Python doesn't 
set them).
History
Date User Action Args
2022-04-11 14:56:03adminsetgithub: 40075
2004-03-25 05:55:02wswongcreate