Bugs item #1563046, was opened at 2006-09-21 10:55 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1563046&group_id=5470
Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Macintosh Group: Python 2.5 Status: Open Resolution: None Priority: 5 Submitted By: Russell Owen (reowen) Assigned to: Jack Jansen (jackjansen) Summary: MacPython ignores user-installed Tcl/Tk Initial Comment: MacPython ignores any user-installed Framework Tcl/Tk. This is a significant issue for Tcl/Tk users because the Tcl/Tk included with Tiger is buggy and really shouldn't be used. Bob Ippolito supplied me a recipe to fix _tkinter.so: install_name_tool \ -change /System/Library/Frameworks/Tcl.framework/Versions/8.4/ Tcl \ /Library/Frameworks/Tcl.framework/Versions/8.4/Tcl \ -change /System/Library/Frameworks/Tk.framework/Versions/8.4/ Tk \ /Library/Frameworks/Tk.framework/Versions/8.4/Tk \ _tkinter.so I encapsulated this recipe into the attached python script "fixtkinter.py", which modifies _tkinter.so to use the user's Tcl/Tk, if found. Please consider running this script while installing MacPython. If you want any refinements to the script, I am happy to provide them (or feel free to modify it yourself of course). Subtleties: - The script uses Carbon.Folder.FSFindFolder to find the "/Library/ Framework" directory, so it should work in any country. - The script fixes the _tkinter.so for the python that executes the script (finding it relative to the "os" module). - The script silently exits without doing anything if no /Library/ Framework Tcl/Tk is found. Thus it is safe to run for all MacPython installations. - It can safely be run more than once; it silently does not modify _tkinter.so file the second time. - It finds the link using ...Tcl.Framework/Versions/Current but resolves the link before modifying _tkinter.so. So if a user upgrades a major Tcl/ Tk version the _tkinter.so file will keep using the old version. I think this is a good thing, since compatilibility is likely to be an issue. - It only looks for a user-installed Tcl/Tk in "/Library/Frameworks"; it does NOT look in the user's private library (~/Library). This was intentional, but I'm not sure it was the right decision. I'm happy to change it, but will want some advice on the best algorithm. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1563046&group_id=5470 _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com