I have had a similar problem here with python-2.5.1, numpy-1.0.4 and
mpl-0.91.2 all installed on my linux (from scratch) system. I reported
this last year but ending in a dead end with no one being able to help.
Okay, that’s not very encouraging.
I would have thought that a segmentation fault would have attracted more attention and more answer. besides, i didn’t see any issue in the bug tracker about that. Maybe I should add one report if I find the time.
My --verbose-debug_annoying output seemed to indicate it had something
to do with the loading of the fonts, like yours, but that’s all the
farther we all got. My work around was to install the prerequisites for
GtkAgg and go with that. Everything works fine now using GtkAgg.
Unfortunately, I have to use Tkagg : I need to add some graphs in a Tk-based application…
I even recently installed ATLAS using lapack so I could install numpy
and scipy with their full functionality and was also successful doing
that. I’m able to do curve fitting and find roots of polynomials.
Installing a full numpy-scipy-matplotlib environment is my second goal.
I had some pb with odr and ndimage, which caused the scipy test suite to fail, but now it works.
installing matplotlib is the last barrier.
So I
believe the TkAgg backend does have some incompatibilities but no one
has a clue as to why. Otherwise, it’s all smooth sailing doing it all
from scratch.
Here are my last findings :
- I runned my installations script on another computer, a linux 64 bit with Red Hat linux 3, and I had the same pb.
So this bug seems reproductible and do not depend on the architecture or on the distribution.
There’s nothing really extraordinary in these script, but I can send you them if you want.
-
I tried to compile all these programs in debug mode. I added the options
–enable-symbols when building tcl, tk and python
–with-pydebug when compiling python
–debug when builkding matplotlib.
This doesn’t give more information when running python2.5 test.py --verbose-debug_annoying
, but the backtrace in gdb is a little longer :
$ gdb python2.5
GNU gdb 6.7.1-debian
Copyright (C) 2007 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type “show copying”
and “show warranty” for details.
This GDB was configured as “i486-linux-gnu”…
Using host libthread_db library “/lib/i686/cmov/libthread_db.so.1”.
(gdb) run
Starting program: /home/loic/tmp/bluelagoon/bin/python2.5
[Thread debugging using libthread_db enabled]
Python 2.5.2 (r252:60911, Feb 27 2008, 20:12:29)
[GCC 4.2.3] on linux2
Type “help”, “copyright”, “credits” or “license” for more information.
[New Thread 0xb7bd4b60 (LWP 6052)]
from pylab import *
[New Thread 0xb67fbb90 (LWP 6055)]
[378309 refs]
plot([1,2,3])
[<matplotlib.lines.Line2D instance at 0x8bd6cac>]
[384105 refs]
show()
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb7bd4b60 (LWP 6052)]
0xb5fe49fc in Bbox::ll_api (this=0x7ffffffb) at src/_transforms.h:362
362 Point* ll_api() {return _ll;}
Current language: auto; currently c++
(gdb) bt
#0 0xb5fe49fc in Bbox::ll_api (this=0x7ffffffb) at src/_transforms.h:362
#1 0xb5fe441b in PyAggImagePhoto (clientdata=0x0, interp=0x8b0ab58, argc=5, argv=0x8d6e028) at src/_tkagg.cpp:91
#2 0xb696cb76 in TclInvokeStringCommand (clientData=0x8d20fe0, interp=0x8b0ab58, objc=5, objv=0xbfe677d4)
at /home/loic/tmp/bluelagoon/src/tcl8.5.1/unix/../generic/tclBasic.c:2105
#3 0xb696e915 in TclEvalObjvInternal (interp=0x8b0ab58, objc=5, objv=0xbfe677d4, command=0x0, length=0, flags=262144)
at /home/loic/tmp/bluelagoon/src/tcl8.5.1/unix/…/generic/tclBasic.c:3647
#4 0xb696eeca in Tcl_EvalObjv (interp=0x8b0ab58, objc=5, objv=0xbfe677d4, flags=262144)
at /home/loic/tmp/bluelagoon/src/tcl8.5.1/unix/…/generic/tclBasic.c:3842
#5 0xb6cd32be in Tkapp_Call (selfptr=0x8bc7348, args=0x8b588ec) at /home/loic/tmp/bluelagoon/src/Python-2.5.2/Modules/_tkinter.c:1327
#6 0xb7df6932 in PyCFunction_Call (func=0x8bcd424, arg=0x8b588ec, kw=0x0) at Objects/methodobject.c:108
#7 0xb7e70fb3 in call_function (pp_stack=0xbfe67e50, oparg=5) at Python/ceval.c:3573
#8 0xb7e6c1c4 in PyEval_EvalFrameEx (f=0x8e1bd1c, throwflag=0) at Python/ceval.c:2272
#9 0xb7e6e880 in PyEval_EvalCodeEx (co=0x8b43e68, globals=0x8b817b4, locals=0x0, args=0x8debbd4, argcount=2, kws=0x8debbdc, kwcount=1,
defs=0x87a39e8, defcount=2, closure=0x0) at Python/ceval.c:2836
#10 0xb7e7154d in fast_function (func=0x8b82c14, pp_stack=0xbfe68530, n=4, na=2, nk=1) at Python/ceval.c:3669
#11 0xb7e71171 in call_function (pp_stack=0xbfe68530, oparg=258) at Python/ceval.c:3594
#12 0xb7e6c1c4 in PyEval_EvalFrameEx (f=0x8deba8c, throwflag=0) at Python/ceval.c:2272
#13 0xb7e6e880 in PyEval_EvalCodeEx (co=0x8ac8f28, globals=0x8a5fdf4, locals=0x0, args=0x8deb570, argcount=1, kws=0x8deb574, kwcount=0,
defs=0x0, defcount=0, closure=0x0) at Python/ceval.c:2836
#14 0xb7e7154d in fast_function (func=0x8bc3214, pp_stack=0xbfe68c10, n=1, na=1, nk=0) at Python/ceval.c:3669
#15 0xb7e71171 in call_function (pp_stack=0xbfe68c10, oparg=0) at Python/ceval.c:3594
#16 0xb7e6c1c4 in PyEval_EvalFrameEx (f=0x8deb414, throwflag=0) at Python/ceval.c:2272
#17 0xb7e6e880 in PyEval_EvalCodeEx (co=0x8ac8ec8, globals=0x8a5fdf4, locals=0x0, args=0x879ba90, argcount=2, kws=0x0, kwcount=0,
defs=0x0, defcount=0, closure=0x0) at Python/ceval.c:2836
#18 0xb7ddaac5 in function_call (func=0x8bc31c4, arg=0x879ba7c, kw=0x0) at Objects/funcobject.c:517
#19 0xb7db2dd3 in PyObject_Call (func=0x8bc31c4, arg=0x879ba7c, kw=0x0) at Objects/abstract.c:1861
#20 0xb7e71f24 in ext_do_call (func=0x8bc31c4, pp_stack=0xbfe692ec, flags=1, na=1, nk=0) at Python/ceval.c:3853
#21 0xb7e6c424 in PyEval_EvalFrameEx (f=0x8deaa5c, throwflag=0) at Python/ceval.c:2312
#22 0xb7e6e880 in PyEval_EvalCodeEx (co=0x8af4c88, globals=0x8ae8ad4, locals=0x0, args=0xb7b9a948, argcount=20, kws=0x0, kwcount=0,
defs=0x0, defcount=0, closure=0x0) at Python/ceval.c:2836
#23 0xb7ddaac5 in function_call (func=0x8b77444, arg=0xb7b9a934, kw=0x0) at Objects/funcobject.c:517
#24 0xb7db2dd3 in PyObject_Call (func=0x8b77444, arg=0xb7b9a934, kw=0x0) at Objects/abstract.c:1861
#25 0xb7dbedfb in instancemethod_call (func=0x8b77444, arg=0xb7b9a934, kw=0x0) at Objects/classobject.c:2519
#26 0xb7db2dd3 in PyObject_Call (func=0x8513374, arg=0x8a6b434, kw=0x0) at Objects/abstract.c:1861
#27 0xb7e70724 in PyEval_CallObjectWithKeywords (func=0x8513374, arg=0x8a6b434, kw=0x0) at Python/ceval.c:3442
#28 0xb6cd5561 in PythonCmd (clientData=0x84f2538, interp=0x8b0ab58, argc=20, argv=0x8d6dfcc)
at /home/loic/tmp/bluelagoon/src/Python-2.5.2/Modules/_tkinter.c:2014
#29 0xb696cb76 in TclInvokeStringCommand (clientData=0x8d86ba8, interp=0x8b0ab58, objc=20, objv=0x8d6df74)
at /home/loic/tmp/bluelagoon/src/tcl8.5.1/unix/../generic/tclBasic.c:2105
#30 0xb696e915 in TclEvalObjvInternal (interp=0x8b0ab58, objc=20, objv=0x8d6df74, command=0xffffffff <Address 0xffffffff out of bounds>,
length=-1, flags=0) at /home/loic/tmp/bluelagoon/src/tcl8.5.1/unix/../generic/tclBasic.c:3647
#31 0xb69c5a80 in TclExecuteByteCode (interp=0x8b0ab58, codePtr=0x8db0670)
at /home/loic/tmp/bluelagoon/src/tcl8.5.1/unix/…/generic/tclExecute.c:2255
#32 0xb69c3763 in Tcl_ExprObj (interp=0x8b0ab58, objPtr=0x8d94aa8, resultPtrPtr=0xbfe6ad1c)
at /home/loic/tmp/bluelagoon/src/tcl8.5.1/unix/…/generic/tclExecute.c:1275
#33 0xb697091c in Tcl_ExprBooleanObj (interp=0x8b0ab58, objPtr=0xb7ef5300, ptr=0xbfe6ad6c)
at /home/loic/tmp/bluelagoon/src/tcl8.5.1/unix/../generic/tclBasic.c:5053
#34 0xb697cd24 in Tcl_IfObjCmd (dummy=0x0, interp=0x8b0ab58, objc=3, objv=0x8d6de44)
at /home/loic/tmp/bluelagoon/src/tcl8.5.1/unix/…/generic/tclCmdIL.c:233
#35 0xb696e915 in TclEvalObjvInternal (interp=0x8b0ab58, objc=3, objv=0x8d6de44,
command=0xbfe6b0b8 “if {"[139539316resize 385 ?? ?? 490 ?? ?? ?? 650 0 0 ?? 0 ?? ?? .146360228 22 ?? ?? ??]" == "break"} break\n”,
—Type to continue, or q to quit—
length=107, flags=0) at /home/loic/tmp/bluelagoon/src/tcl8.5.1/unix/…/generic/tclBasic.c:3647
#36 0xb696f945 in TclEvalEx (interp=0x8b0ab58,
script=0xbfe6b0b8 "if {\"[139539316resize 385 ?? ?? 490 ?? ?? ?? 650 0 0 ?? 0 ?? ?? .146360228 22 ?? ?? ??]\" == \"break\"} break\n",
numBytes=107, flags=131072, line=1) at /home/loic/tmp/bluelagoon/src/tcl8.5.1/unix/../generic/tclBasic.c:4294
#37 0xb696f097 in Tcl_EvalEx (interp=0x8b0ab58,
script=0xbfe6b0b8 “if {"[139539316resize 385 ?? ?? 490 ?? ?? ?? 650 0 0 ?? 0 ?? ?? .146360228 22 ?? ?? ??]" == "break"} break\n”,
numBytes=107, flags=131072) at /home/loic/tmp/bluelagoon/src/tcl8.5.1/unix/../generic/tclBasic.c:4000
#38 0xb6a897e4 in Tk_BindEvent (bindingTable=0x8c3b880, eventPtr=0xbfe6b314, tkwin=0x8c5c508, numObjects=0, objectPtr=0xbfe6b248)
at /home/loic/tmp/bluelagoon/src/tk8.5.1/unix/../generic/tkBind.c:1773
#39 0xb6a90a88 in TkBindEventProc (winPtr=0x8c5c508, eventPtr=0xbfe6b314)
at /home/loic/tmp/bluelagoon/src/tk8.5.1/unix/…/generic/tkCmds.c:284
#40 0xb6a9af04 in Tk_HandleEvent (eventPtr=0xbfe6b314) at /home/loic/tmp/bluelagoon/src/tk8.5.1/unix/…/generic/tkEvent.c:1423
#41 0xb6abfc2e in TkDoConfigureNotify (winPtr=0x8c5c508) at /home/loic/tmp/bluelagoon/src/tk8.5.1/unix/…/generic/tkWindow.c:2216
#42 0xb6abf208 in Tk_MakeWindowExist (tkwin=0x8c5c508) at /home/loic/tmp/bluelagoon/src/tk8.5.1/unix/…/generic/tkWindow.c:1768
#43 0xb6abeef4 in Tk_MapWindow (tkwin=0x8c5c508) at /home/loic/tmp/bluelagoon/src/tk8.5.1/unix/…/generic/tkWindow.c:1641
#44 0xb6ab35ad in ArrangePacking (clientData=0x8c223d0) at /home/loic/tmp/bluelagoon/src/tk8.5.1/unix/…/generic/tkPack.c:820
#45 0xb6a2d483 in TclServiceIdle () at /home/loic/tmp/bluelagoon/src/tcl8.5.1/unix/…/generic/tclTimer.c:738
#46 0xb6a0aa69 in Tcl_DoOneEvent (flags=-3) at /home/loic/tmp/bluelagoon/src/tcl8.5.1/unix/…/generic/tclNotify.c:991
#47 0xb6cd6f1a in Tkapp_MainLoop (selfptr=0x8bc7348, args=0x8256dc4) at /home/loic/tmp/bluelagoon/src/Python-2.5.2/Modules/_tkinter.c:2547
#48 0xb7df67c1 in PyCFunction_Call (func=0x8b943ec, arg=0x8256dc4, kw=0x0) at Objects/methodobject.c:73
#49 0xb7e70fb3 in call_function (pp_stack=0xbfe6bb10, oparg=1) at Python/ceval.c:3573
#50 0xb7e6c1c4 in PyEval_EvalFrameEx (f=0x8de9ffc, throwflag=0) at Python/ceval.c:2272
#51 0xb7e6e880 in PyEval_EvalCodeEx (co=0x8adda48, globals=0x8ae8ad4, locals=0x0, args=0x8de9288, argcount=0, kws=0x8de9288, kwcount=0,
defs=0x8b6e4a8, defcount=1, closure=0x0) at Python/ceval.c:2836
#52 0xb7e7154d in fast_function (func=0x8b6f034, pp_stack=0xbfe6c1f0, n=0, na=0, nk=0) at Python/ceval.c:3669
#53 0xb7e71171 in call_function (pp_stack=0xbfe6c1f0, oparg=0) at Python/ceval.c:3594
#54 0xb7e6c1c4 in PyEval_EvalFrameEx (f=0x8de913c, throwflag=0) at Python/ceval.c:2272
#55 0xb7e6e880 in PyEval_EvalCodeEx (co=0x8ac8ce8, globals=0x8a5fdf4, locals=0x0, args=0x8de9118, argcount=0, kws=0x8de9118, kwcount=0,
defs=0x0, defcount=0, closure=0x0) at Python/ceval.c:2836
#56 0xb7e7154d in fast_function (func=0x8bc3084, pp_stack=0xbfe6c8d0, n=0, na=0, nk=0) at Python/ceval.c:3669
#57 0xb7e71171 in call_function (pp_stack=0xbfe6c8d0, oparg=0) at Python/ceval.c:3594
#58 0xb7e6c1c4 in PyEval_EvalFrameEx (f=0x8de8fd4, throwflag=0) at Python/ceval.c:2272
#59 0xb7e6e880 in PyEval_EvalCodeEx (co=0xb7bcc268, globals=0xb7bb9214, locals=0xb7bb9214, args=0x0, argcount=0, kws=0x0, kwcount=0,
defs=0x0, defcount=0, closure=0x0) at Python/ceval.c:2836
#60 0xb7e6352c in PyEval_EvalCode (co=0xb7bcc268, globals=0xb7bb9214, locals=0xb7bb9214) at Python/ceval.c:494
#61 0xb7e9c10b in run_mod (mod=0x80b80e0, filename=0xb7ee4b33 “”, globals=0xb7bb9214, locals=0xb7bb9214, flags=0xbfe6cc04,
arena=0x80589a8) at Python/pythonrun.c:1273
#62 0xb7e9a621 in PyRun_InteractiveOneFlags (fp=0xb7d1e440, filename=0xb7ee4b33 “”, flags=0xbfe6cc04) at Python/pythonrun.c:792
#63 0xb7e9a24a in PyRun_InteractiveLoopFlags (fp=0xb7d1e440, filename=0xb7ee4b33 “”, flags=0xbfe6cc04) at Python/pythonrun.c:723
#64 0xb7e9a076 in PyRun_AnyFileExFlags (fp=0xb7d1e440, filename=0xb7ee4b33 “”, closeit=0, flags=0xbfe6cc04)
at Python/pythonrun.c:692
#65 0xb7eaa63b in Py_Main (argc=1, argv=0xbfe6cd14) at Modules/main.c:523
(gdb)
I’m not used to debugging C code or to cope with segmentation faults.
Do you see anything which could give me a clue for fixing this pb ?
Thanks for the reply,
···
–
LB