[Pythonmac-SIG] Why Do I Explicitly Need MacPython

Bob Ippolito bob at redivi.com
Mon Sep 25 23:48:25 CEST 2006


On 9/25/06, davelist at mac.com <davelist at mac.com> wrote:
>
> On Sep 25, 2006, at 5:08 PM, Russell E. Owen wrote:
>
> <snip>
>
> >
> > I see what you mean about different installations. I think the
> > following
> > might work better:
> > - Always modify _tkinter.so to point to Tcl/Tk 8.4 in
> >    /Library/Frameworks.
> > This will fall back to the built in /System/Library/Frameworks if the
> > user has not installed an 8.4 of their own.
> >
> > It avoids a few of the issues you bring up and is simpler and more
> > robust than what I originally suggested. Advantages:
> > - All installations would be the same.
> > - If the user installs a new Tcl/Tk after installing Python, it
> > would be
> > used (unless it's 8.5, which would not be safe to try with Python).
> >
> > It still does not address your concern than a user might accidentally
> > have a  Tcl/Tk that they don't want to use. I'd personally be
> > happier if
> > users could  easily upgrade their Tcl/Tk (since the installed one
> > is so
> > bad), so I see this as more of an advantage than a disadvantage. Users
> > aren't going to typically  install Tcl/Tk unless they want to use
> > it, I
> > think. Still...I'm sure you've seen more requests for help than I have
> > over the years.
> >
> > I'm not keen on including a Tcl/Tk for several reasons:
> > - Which version would you use? Even 8.4.11 has some important known
> > bugs, and 8.4.13 has different ones (at least one of which is very
> > nasty
> > for my application, so I stick with 8.4.11 for now).
> > - If a user wanted to upgrade their Tcl/Tk, what would they do? The
> > answer is easy if we use the version of 8.4 found in /Library/
> > Framework
> > (if any).
> > - It can be tricky to add needed additions (my app uses the
> > "snack" sound library, for example). A standard Tcl/Tk makes this much
> > easier (and in fact  ActiveState Tcl/Tk already includes all additions
> > most folks would want).
> > - There is no universal Tcl/Tk yet (though one is planned). I
> > personally
> > don't want to try to build one.
> >
> > So my personal suggestion is that we modify _tkinter.so using
> > Bob Ippolito's recipe unchanged (no fancy script that hunts for an
> > installed Tcl/Tk). It will be completely compatible with the built in
> > Tcl/Tk but gives any real users of Tcl/Tk (anyone who isn't just
> > writing
> > "hello world") a trivial way to get a decent version.
> >
> > -- Russell
>
>
> 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.

Using ActiveState doesn't fix the problem alone, you also have to
install a newer Tk. You might as well use the python.org distro and
install a replacement _tkinter.so while you install a new Tk.

Only takes a few minutes to build an installer package. You only have
to do it once, and you could wrap it up in a mpkg that contains both
the new Tk and the replacement _tkinter.so.

-bob


More information about the Pythonmac-SIG mailing list