We can actually check from Python whether it's a framework install or not.

>>> import MacOS
>>> MacOS.WMAvailable()

returns True if it's a framework install, False if not.

I can add this check to the MacOSX backend and print out a warning if it's not a framework install.


--- On Wed, 5/26/10, Daniel Welling <dantwelling@gmail.com> wrote:

From: Daniel Welling <dantwelling@gmail.com>
Subject: Re: [Matplotlib-users] Mac backend problems for nearly all backends.
To: "Michiel de Hoon" <mjldehoon@yahoo.com>
Cc: matplotlib-users@lists.sourceforge.net
Date: Wednesday, May 26, 2010, 12:51 AM

2) In which case, it's not a framework install.  Fink puts everything into /sw/; there's nothing to do with pyton in /Library/Frameworks.
Thanks for the clarification; I'm tempted to get Python from source and try this...


On Tue, May 25, 2010 at 10:41 PM, Michiel de Hoon <mjldehoon@yahoo.com> wrote:

> 1)The problem does manifest in the same manner through the normal python prompt.

OK that is good to know.

> 2) I'm not sure what is meant by a "framework install."  Everything (except MPL 99.1.1)
> was installed through fink.

This is important. Check where python is installed. If 'which python' shows /Library/Frameworks/Python.framework/Versions/2.6/bin/python or something similar, you have a framework version. If on the other hand it shows /usr/bin/python, /usr/local/bin/python, or something similar, you don't have a framework version. I don't know what fink installs by default. If you don't have Python installed as a framework, some backends (including the MacOSX backend) will not interact properly with the window manager. This is a Mac peculiarity. If you build Python from source, you can specify to install a framework version by passing the --enable-framework option to the configure script.

> 6) Although I use x11 and not the native Mac terminal, I'm not sure if this requires me to > install different packages for the gui stuff.  Could you guys expand on this, please?

Some backends go make use of X11 (e.g., the gtkcairo backend), others do not (e.g., the MacOSX backend). The MacOSX backend should work with both the native Mac terminal and with an X11 terminal.