3 # Delay import _tkinter until we have set TCL_LIBRARY,
4 # so that Tcl_FindExecutable has a chance to locate its
7 # Unfortunately, we cannot know the TCL_LIBRARY directory
8 # if we don't know the tcl version, which we cannot find out
9 # without import Tcl. Fortunately, Tcl will itself look in
10 # <TCL_LIBRARY>\..\tcl<TCL_VERSION>, so anything close to
11 # the real Tcl library will do.
13 prefix
= os
.path
.join(sys
.prefix
,"tcl")
14 # if this does not exist, no further search is needed
15 if os
.path
.exists(prefix
):
16 if not os
.environ
.has_key("TCL_LIBRARY"):
17 for name
in os
.listdir(prefix
):
18 if name
.startswith("tcl"):
19 tcldir
= os
.path
.join(prefix
,name
)
20 if os
.path
.isdir(tcldir
):
21 os
.environ
["TCL_LIBRARY"] = tcldir
22 # Compute TK_LIBRARY, knowing that it has the same version
25 ver
= str(_tkinter
.TCL_VERSION
)
26 if not os
.environ
.has_key("TK_LIBRARY"):
27 v
= os
.path
.join(prefix
, 'tk'+ver
)
28 if os
.path
.exists(os
.path
.join(v
, "tclIndex")):
29 os
.environ
['TK_LIBRARY'] = v
30 # We don't know the Tix version, so we must search the entire
32 if not os
.environ
.has_key("TIX_LIBRARY"):
33 for name
in os
.listdir(prefix
):
34 if name
.startswith("tix"):
35 tixdir
= os
.path
.join(prefix
,name
)
36 if os
.path
.isdir(tixdir
):
37 os
.environ
["TIX_LIBRARY"] = tixdir