[Pythonmac-SIG] Why Do I Explicitly Need MacPython
Dave Reed
davelist at mac.com
Tue Sep 26 22:39:11 CEST 2006
On Sep 25, 2006, at 6:31 PM, Russell E Owen wrote:
> At 5:26 PM -0400 2006-09-25, davelist at mac.com wrote:
>> I'm very interested in this and would be happy to help with
>> testing. I teach Python at the college level using John Zelle's
>> Python book (it uses Tk for simple GUI programs). Most of the
>> programs run fine, but some of the more complex ones crash
>> intermittently within Tk. The same program seems to run fine on
>> Windows using 2.4.3 although it does crash intermittently on
>> CentOS 4.3 within Tk.
>>
>> In the meantime, are you saying the simplest solution for my
>> students with Macs is to use ActiveState (some have G4 laptops and
>> some have Intel based laptops)?
>>
>> I have a G5 running 10.3.9 at work (IT isn't planning to upgrade
>> yet) and a G5 running 10.4.x at home so I'll be happy to test on
>> both of those.
>
> If it's bugs in Tcl/Tk that are causing the crashes then by all
> means I would try:
> - Install ActiveState Tcl/Tk 8.4.11 or 8.4.13.
> - Install MacPython (it's better than the one from Apple, plus
> you're about to modify python, and you shouldn't modify anything
> in /System)
> - Modify _tkinter.so according to Bob Ippolito's recipe. At the
> command line:
>
> 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 \
> /Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/lib-
> dynload/_tkinter.so
>
> The above command should be six lines long; you'll probably have to
> unwrap at least the last line.
>
> An alternative is to install ActiveState Python instead of
> MacPython, because it works with ActiveState Tcl/Tk "out of the
> box". But it doesn't include readline. You can add readline, but I
> think it's easier to fix _tkinter.so.
>
> -- Russell
I installed ActiveState Tcl and MacPython 2.4.3 on the 10.3.9
machine. The /Systems/Library/Frameworks/Tk.framework directory does
not exist (the Tcl.Framework directory does so I tried the above
install_name_tool line with just the Tcl lines (and the final line
with ._tkinter.so).
I can't get some Tk programs to run now. Using the graphics.py file at:
http://mcsp.wartburg.edu/zelle/python/graphics.py
I get:
$ /usr/local/bin/python
Python 2.4.3 (#1, Apr 7 2006, 10:54:33)
[GCC 4.0.1 (Apple Computer, Inc. build 5250)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import graphics
>>> Tk_MacOSXSetupTkNotifier: first [load] of TkAqua has to occur in
the main thread!
Abort trap
Does anyone still have a 10.3.9 system to try importing that
graphics.py file and see if it works for them? Any thoughts on making
it work? I have an old python 2.3.5 from fink that does import
graphics.py ok and works fine for many simple programs but crashes on
more complicated programs.
I have not yet tried it on the 10.4.7 G5 yet.
Thanks,
Dave
More information about the Pythonmac-SIG
mailing list