[Pythonmac-SIG] How do I make a binary matplotlib distribution on OS-X?

Bob Ippolito bob at redivi.com
Wed Feb 2 01:14:13 CET 2005


On Feb 1, 2005, at 19:04, Chris Barker wrote:

> See my previous message about building matplotlib on OS-X. Now that 
> I've done that, I need to give it to some of my coworkers that don't 
> have the dev tools installed, and are aghast at the idea of typing 
> ./configure; make, make install.
>
> So, how do I make a binary distro? I know I can get distutils to do 
> it, but it won't included the needed extra libs:
>
> freetype
> libpng
> zlib

zlib ships with OS X

> It seems I have three options:
>
> 1) Just give them a tarball of the compiled libs, ready to be dropped 
> into /usr/local (I don't like that option, what If I clobber 
> something?)
>
> 2) Somehow put the libs inside the matplotlib distro

That's possible

> 3) Statically link those libs into the matplotlib extensions

But this is better

> I have no idea how to do 2 or 3, but could probably figure it out.

This is (3)
Make sure you don't have libpng.dylib or libfreetype.dylib sitting 
around on your link paths...

Build them like this:
./configure --disable-shared --enable static

Make sure you only have libpng.a and libfreetype.a on your link paths.  
It will link statically.

> What do folks suggest? Any pointers?

After you've linked matplotlib statically, use bdist_mpkg from py2app 
to make a redistributable .pkg installer for it.  After installing 
py2app, you should have a tool in /usr/local/bin called "bdist_mpkg" 
that will Just Do It without any setup.py modifications to the target 
lib... so go into the matplotlib directory, type bdist_mpkg, and cross 
your fingers that a dist/matplotlib-xx.pkg will appear.  If you have 
any problems beyond that, let me know.

-bob



More information about the Pythonmac-SIG mailing list