[Pythonmac-SIG] Re: [Matplotlib-users] matplotlib OS-X binary problems.

Chris Barker Chris.Barker at noaa.gov
Fri Feb 4 23:19:25 CET 2005


Robert Kern wrote:
> Chris Barker wrote:
>> However, that doesn't seem to work if I have libfreetype.dylib 
>> somewhere standard, and I certainly don't want to remove it! (Maybe I 
>> could temporarily, but that's hardly the robust solution I'm looking for)
> 

> Change the paths that distutils will add to the link line. They're at 
> the top of setupext.py . Remove the ones you don't need.

Except that the *.a and *.dylib are put in the same place. Darn.

>> By the way, it would also be good to get this to work with TK and/or 
>> GTK. Has anyone done that successfully that would like to help out 
>> with this?

> With TclTkAqua, it Just Works.

Someone posted recently to the MacPython Mailing list with a series of 
questions that this was not the case, at least to for him. So I wasn't sure.

>> Also, as far as PyGTK is concerned. Can you run it without running 
>> Fink? That's the only way I've seen it done. If it is a Fink only 
>> option, then this is moot, as I'm looking for a Fink free approach, 
>> and someone else has put together a fink matplotlib package.

> You could try Darwinports. Set Darwinports' prefix to /usr/local, and 
> use port(1) to make Installer.app packages for GTK et al. Bundle them 
> with your bdist_mpkg metapackage.

Hmm. That sounds promising. However...

My immediate need to to get matplotlib installed on and OS-X Server box 
that someone else is administering. For this purpose, I only need the 
Agg back end. However, for my own purposes, I also want wx. The easiest 
way for me to accomplish my immediate goal is probably to just install 
all the libs needed on that server, but I'm trying to keep it simple for 
the admin, and I figured this could be a useful contribution to the 
MacPython community.

However, here is the complication. As long as I am doing this, I'd like 
to make it as useful as possible. That means it would be nice if I could 
come up with a single binary that works with all the available back ends 
on OS-X (Agg, wx, PyGTK, Tkinter). I also want people to be able to 
install it on a stock box and have it work. This doesn't mean that I 
want it to include PyGTK and TK, but it would be nice if it worked with 
those, if they were present.

The question is: Can I build a binary version that will work with all 
the back ends, if they are there, but also work on what is there if they 
aren't all. This comes down to when the linking happens, I guess. 
Experimentation will answer this for me, but I welcome and insight any 
of you may have.

One issue that has come up is libfreetype. If you have GTK, you have 
X11, so you have libfreetype. Indeed, I don't have GTK, but I do have 
X11, and the X11 freetype got linked to my package. I can probably fix 
this by removing "/usr/X11R6" from the basedir list for darwin. Then 
I'll have libfreetype statically linked to matplotlib, but PyGTK, if the 
user has it, will have a different version dynamically linked. Is this 
going to cause problems?

More as I make more progress...

-Chris








-- 
Christopher Barker, Ph.D.
Oceanographer
                                     		
NOAA/OR&R/HAZMAT         (206) 526-6959   voice
7600 Sand Point Way NE   (206) 526-6329   fax
Seattle, WA  98115       (206) 526-6317   main reception

Chris.Barker at noaa.gov


More information about the Pythonmac-SIG mailing list