On Oct 6, 5:58 pm, [EMAIL PROTECTED] wrote: > On Oct 6, 4:48 pm, [EMAIL PROTECTED] wrote: > > > > > I'm having trouble with tkinter on a new installation of Python (2.6), > > built with the framework option from source that was downloaded from > > python.org. I'm running OS 10.4 on a PowerPC G4. > > > The problem first arose when I tried to run matplotlib - it couldn't > > find tcl/tk because it was searching for 8.5, and I had 8.4. I found > > and built tcl/tk 8.5, which led to a new error, reproduced below: > > > Traceback (most recent call last): > > File "brownian2.py", line 55, in <module> > > main() > > File "brownian2.py", line 41, in main > > root = Tk() > > File "/Library/Frameworks/Python.framework/Versions/2.6/lib/ > > python2.6/lib-tk/Tkinter.py", line 1645, in __init__ > > self._loadtk() > > File "/Library/Frameworks/Python.framework/Versions/2.6/lib/ > > python2.6/lib-tk/Tkinter.py", line 1659, in _loadtk > > % (_tkinter.TK_VERSION, tk_version) > > RuntimeError: tk.h version (8.4) doesn't match libtk.a version (8.5) > > > I'm a bit of a neophyte - can anyone tell me how to go about fixing > > this? I've found some information by searching the list and Google, > > but no helpful solutions. > > > Thanks, > > Nat > > I haven't yet installed Python 2.6, but I've seen this error reported > here and on the MacPython list. > > Based on what I'm seeing in the error message and in the setup.py file > in the source code, it appears that Python 2.6 is looking in > /System/Library/Frameworks for a Tcl/Tk installation rather than in > /Library/Frameworks, which is second on the list of places to look. > Tcl/Tk 8.4 comes standard with OS X in 10.4 and 10.5, and it's > installed > in /System/Library/Frameworks. The problem is that Python 2.6 seems to > be linked against Tcl/Tk 8.5--is this correct?--and when it finds Tcl/ > tk > 8.4, it returns an error. > > You can avoid this problem by building Python yourself and putting > /Library/Frameworks first on the search path for Tcl/Tk. Look in > setup.py in the source code, around line 1438 (in the > 'detect_tkinter_darwin' function), and either comment out > /System/Library or put it underneath /Library/Frameworks. This is what > the official build from Python.org should do--look first in > /Library/Frameworks and then fall back on /System/Library/Frameworks. > I'm not sure why it doesn't. > > Should a bug report be filed against this? If the Mac build of Python > 2.6 consistently looks in /System/Library/Frameworks for Tcl/Tk, it > won't run Tkinter applications. It makes the build pretty much useless > for anyone needing it to run Tkinter apps, including Idle. I'd say > it's > a showstopper issue. > > --Kevin
Worked like a charm for getting Tkinter to work, thanks! Seems strange that this is the way it's shipped; wonder if there's a good reason? Still having trouble with matplotlib, but I suspect that's unrelated, and I'll work on it. Again, thanks! -- http://mail.python.org/mailman/listinfo/python-list