|
From: John H. <jdh...@ac...> - 2004-06-25 14:40:07
|
>>>>> "Gregory" == Gregory Lielens <gre...@ff...> writes:
Gregory> Hello,
Gregory> I wondered if it is possible for me to compile a version
Gregory> of matplotlib (using numarray) from source on
Gregory> windows...so that I can play with the source and try to
Gregory> locate the origin of the strange crash I have. I have
Gregory> visual C++ 6.0 compiler, not sure if this is ok as my
Gregory> first tests usind setup.py build did not succeed (linking
Gregory> failed)...so is this relatively easy to do...or really
Gregory> better leaved to true masochists? ;-)
It's not too hard, and I would be very thankful if you did! I suggest
following the instructions in setupext.py. That points you to the
win32_static dir with enclosed README instructions on how to set up
mingw32. I've never built matplotlib with VC so I can't really advise
you there.
One thing that may simplify the build for you is you can turn off
BUILD_AGG, BUILD_IMAGE, BUILD_TKAGG, and BUILD_GTKAGG since you
experienced the problem with backend ps. So you should be able to
safely skip the stuff about getting GTK and Tk.
If you get it with
>>> import matplotlib
>>> matplotlib.use('PS')
>>> from matplotlib.matlab import *
The problem must be in _transforms or ft2font. Unless of course this
is a really funky bug, which it appears to be.
To narrow the focus further, you might do
# new python shell
>>> import matplotlib
>>> matplotlib.use('PS')
>>> import matplotlib._transforms
# start a new python shell
>>> import matplotlib
>>> matplotlib.use('PS')
>>> import matplotlib.ft2font
Do either of these crash ?
I'm putting my money on _transforms, since it uses numarray and
ft2font doesn't. Since you only get the crash with numarray builds,
the only logical place for the bug to be is in the _transforms module.
But will logic help us here ?!?
Another hackish debugging technique is to insert a lot of print
statements in matplotlib.matlab to find out where the crash is
occurring, ie, on which import line.
Good luck setting up the build environment.
JDH
|