On Feb 3, 2005, at 19:07, Chris Barker wrote:

I posted a note here the other day about a matplotlib binary. I've discovered a problem with it. Apparently, it has linked against the libfreetype in /usr/X11. That means it will work fine on a system with Apple's X11 installed (like mine or the first system I tested it on).

.. and the system that I tested it on :)

So, the question remains: How to I get distutils to statically link selected libs? Bob had suggested:

"""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.
"""


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)

You have three options:
- make sure the dylibs aren't sitting around in the same location as the .a, and make sure the .a's path is preferred (you could make a local dir, -L to it, symlink the archives in)
- change the setup.py relatively significantly and specify them as object files with their full path (I can't tell you off the top of my head what the distutils incantation would be for this, but you definitely can not use it's "libraries" option, or whatever that is called)
- don't link statically and install the dylibs too, somehow (possibly by building+installing them with --prefix=/Library/Python/2.3/matplotlib/lib-dynload/ and -L to that when linking.. note that this would require a bdist_mpkg subclass to make a .pkg out of it)


-bob

_______________________________________________
Pythonmac-SIG maillist  -  Pythonmac-SIG@python.org
http://mail.python.org/mailman/listinfo/pythonmac-sig

Reply via email to