Can you get a traceback from gdb?  The following should do it:

     gdb python2.6

at the gdb prompt, type "run", then at the Python prompt, reproduce the 
error using "import matplotlib.figure".  It should crash, then type "bt" 
to get a traceback.  That may illustrate the source of the error.

Also of note, when using bisect -- the distutils build doesn't always 
rebuild enough if only header files change.  I recommend clearing out 
the build directory before each compile when using bisect to track down 
a C++-related change.

Mike

On 11/09/2011 10:44 PM, Friedrich Romstedt wrote:
> Hi,
>
> as announced on the devel list here my report on "my" Bus error.
>
> I first noticed the Bus error with a freshly compiled version from
> today's git.  A ``import matplotlib.figure`` was sufficient to produce
> the bus error.  ``python2.6 -v`` showed that it appears when
> matplotlib.ft2font is imported, dynamically loaded from
> matplotlib/ft2font.so.
>
> I don't know much about this C++ stuff (ft2font.cpp), but I did a
> bisect.  Unfortunately, it seems (to me) that bisect acts on the
> timeline, not respecting the branch structure, hence it gets it a bit
> wrong, at least not right enough to enable me to find the offending
> commit.
>
> ``git bisect`` finds "some" first bad commit, but due to the commits
> in other branches after the first real bad commit it gets it a bit
> wrong.  The binary search then skips too far.
>
> Nevertheless, I found that e05c2fa32f0fc31 fails, its parent cb609d5
> fails too.  The very first ancestor of this tree in 2011 I can find is
> 05631088 (2011-02-20): That one succeeds.  But it has some nonstandard
> setupext.py.  So my test script for ``git bisect run`` cannot be
> applied.  Its only child is df25e31309b, with a standard setupext.py:
> It succeeds.
>
> git bisect seems to work on the full timeline, so it's useless here.
> Manual bisecting (using gitk on cb609d5415e): 9a93a5c4 (2011-02-24)
> fails; 2ab8582f (2011-02-21) fails; df25e3130 (2011-02-20, the merge
> of 0.98 into 0.99) succeeds (see above).  13894992 (2011-02-20, the
> merge of 0.99 into 1.0) fails.
>
> So I conclude the failure is introduced somewhere in the 0.99 branch.
>
> Compiling randomly while searching the history: e38440f2 (2010-08-18) fails.
>
> A git blame _src/ft2font.cpp shows that most lines are due to Michael
> Droettboom in 6b643862.  Unfortunately this is just "Standardizing
> formatting of C/C++ code."
>
> The 1.0.0 release 668a769fb fails.
>
> Finally testing the 6b643862 ("Standardizing formatting [...]",
> 2010-06-24): fails
>
> The next one with modifications to ft2font.cpp is b5ce84214f2
> (2010-06-10): fails, its predecessor 97b98e33c: fails.
>
> Next with modifications to ft2font.cpp is 7c228264e (2010-06-04):
> fails, its predecessor e8f143c78: fails.
>
> Next one is 857adaee2 (2010-04-16): fails, its predecessor 5a9d580b81: fails.
>
> There is no other modification to ft2font.cpp apparently in 2010 on this 
> branch.
>
> Btw, python2.6-32 signals "Bus error", while python-64 exits with
> "Abort trap".  The Python is self-compiled Python 2.6:
>
> Python 2.6.5 (r265:79063, Jul 18 2010, 12:14:53)
> [GCC 4.2.1 (Apple Inc. build 5659)] on darwin
>
> I'm building by patching setupext.py to include /usr/local/.
>
> Can anyone maybe provide with a pointer what I should try to sort this
> out, aside of updating my freetype2 (what shouldn't count as a
> solution, it should just work also with not fully-recent freetype2).
> I'm not sure if I'm doing something stupid wrong, but since it
> succeeds before the 0.99 branch is merged in I suspect something
> non-trivial.
>
> I wonder why I did not notice this before on my machine.  Admittedly,
> I did not compile in 2011 at all, I think.  But in Autumn 2010, I did,
> and with success.  So I wonder how this error was making its way
> around my machine?  I remember that the git mirror of the svn was no
> longer maintained the time I last worked on matplotlib.
>
> Friedrich
>
> ------------------------------------------------------------------------------
> RSA(R) Conference 2012
> Save $700 by Nov 18
> Register now
> http://p.sf.net/sfu/rsa-sfdev2dev1
> _______________________________________________
> Matplotlib-users mailing list
> Matplotlib-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users


------------------------------------------------------------------------------
RSA(R) Conference 2012
Save $700 by Nov 18
Register now
http://p.sf.net/sfu/rsa-sfdev2dev1
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to