Help in solving a segfault problem?

Hi all,
I am stuck on matplotlib generating a segfault when invoking 'plot'.
I've ben trying to solve this problem for a while now but no luck.
I've seen many duplicates of this problem on the web, some with
solutions, some without. The solution must be something more generic
that I'm missing.

Here are some of these pointers to the same problem that I have (the
backtrace, that I pasted further below, has the same properties)
http://old.nabble.com/101-Point-Segmentation-Fault-td27552745.html
http://old.nabble.com/weird-error-with-gcc-4.4,-gomp,-cython,-and-matplotlib-td27351399.html
http://bugs.gentoo.org/show_bug.cgi?id=338513

So here's my specific setup and backtrace. I hope I can find some help!
I'm using the 'agg' backend that's it, and the build and install dir
were cleaned up.

Thanks so much!

···

===
Solaris10, 64bits, Python 2.7, numpy 1.5.1, gcc 4.4.1 #all compiled from source

backtrace:

gdb python
(gdb) run -c 'import pylab;pylab.clf(); pylab.plot([4])'
Starting program: python -c 'import pylab;pylab.clf(); pylab.plot([4])'
[Thread debugging using libthread_db enabled]
[New Thread 1 (LWP 1)]
terminate called after throwing an instance of 'std::exception'
terminate called recursively

Program received signal SIGABRT, Aborted.
[Switching to Thread 1 (LWP 1)]
0xfffffd7fff0ae88a in _lwp_kill () from /lib/64/libc.so.1

#0 0xfffffd7fff0ae88a in _lwp_kill () from /lib/64/libc.so.1
#1 0xfffffd7fff0a98b3 in thr_kill () from /lib/64/libc.so.1
#2 0xfffffd7fff0577e9 in raise () from /lib/64/libc.so.1
#3 0xfffffd7fff03a7d0 in abort () from /lib/64/libc.so.1
#4 0xfffffd7ff46d1a56 in __gnu_cxx::__verbose_terminate_handler () at
../../../../../libstdc++-v3/libsupc++/vterminate.cc:48
#5 0xfffffd7ff46cef6a in __cxxabiv1::__terminate (handler=0x1) at
../../../../../libstdc++-v3/libsupc++/eh_terminate.cc:38
#6 0xfffffd7ff46cefb3 in std::terminate () at
../../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48
#7 0xfffffd7ff46cf03e in __cxxabiv1::__cxa_rethrow () at
../../../../../libstdc++-v3/libsupc++/eh_throw.cc:116
#8 0xfffffd7ff46d1af6 in __gnu_cxx::__verbose_terminate_handler () at
../../../../../libstdc++-v3/libsupc++/vterminate.cc:78
#9 0xfffffd7ff46cef6a in __cxxabiv1::__terminate (handler=0x1) at
../../../../../libstdc++-v3/libsupc++/eh_terminate.cc:38
#10 0xfffffd7ff46cefb3 in std::terminate () at
../../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48
#11 0xfffffd7ff46cf0b6 in __cxxabiv1::__cxa_throw (obj=<value
optimized out>, tinfo=<value optimized out>, dest=<value optimized

)

    at ../../../../../libstdc++-v3/libsupc++/eh_throw.cc:83
#12 0xfffffd7ff4a22fd8 in py_to_agg_transformation_matrix
(obj=0x774380, errors=<value optimized out>) at
src/agg_py_transforms.cpp:22
#13 0xfffffd7ff4a32e7c in _path_module::update_path_extents
(this=<value optimized out>, args=...) at src/path.cpp:380
#14 0xfffffd7ff4a34d90 in
Py::ExtensionModule<_path_module>::invoke_method_varargs (this=<value
optimized out>,
    method_def=<value optimized out>, args=...) at
./CXX/Python2/ExtensionModule.hxx:184
#15 0xfffffd7ff4a209b7 in Py::method_varargs_call_handler
(_self_and_name_tuple=<value optimized out>, _args=<value optimized

)

    at CXX/Python2/cxx_extensions.cxx:1714
#16 0x00000000004a6071 in call_function (f=0x2024770, throwflag=<value
optimized out>)
    at /usr/local/src/lang/Python-2.7.1/Python/ceval.c:4012
#17 PyEval_EvalFrameEx (f=0x2024770, throwflag=<value optimized out>)
at /usr/local/src/lang/Python-2.7.1/Python/ceval.c:2665
#18 0x00000000004a79c1 in PyEval_EvalCodeEx (co=0x124e230,
globals=<value optimized out>, locals=<value optimized out>,
args=0x2024910,
    argcount=<value optimized out>, kws=0x3, kwcount=2,
defs=0x155c888, defcount=3, closure=0x0)

Hi,
I didn't get much reply on this issue, so I'm just trying to resurrect
the question.
If there's no easy answer, could someone help me by giving me a
pointer, a method to resolve the problem, or any other quick
advice...?

Thanks much!

···

On Thu, Mar 10, 2011 at 12:29 AM, Nicolas SCHEFFER <scheffer.nicolas@...287...> wrote:

Hi all,
I am stuck on matplotlib generating a segfault when invoking 'plot'.
I've ben trying to solve this problem for a while now but no luck.
I've seen many duplicates of this problem on the web, some with
solutions, some without. The solution must be something more generic
that I'm missing.

Here are some of these pointers to the same problem that I have (the
backtrace, that I pasted further below, has the same properties)
http://old.nabble.com/101-Point-Segmentation-Fault-td27552745.html
http://old.nabble.com/weird-error-with-gcc-4.4,-gomp,-cython,-and-matplotlib-td27351399.html
338513 – python/matplotlib/pygtk segfaults when importing gtk

So here's my specific setup and backtrace. I hope I can find some help!
I'm using the 'agg' backend that's it, and the build and install dir
were cleaned up.

Thanks so much!

===
Solaris10, 64bits, Python 2.7, numpy 1.5.1, gcc 4.4.1 #all compiled from source

backtrace:

gdb python
(gdb) run -c 'import pylab;pylab.clf(); pylab.plot([4])'
Starting program: python -c 'import pylab;pylab.clf(); pylab.plot([4])'
[Thread debugging using libthread_db enabled]
[New Thread 1 (LWP 1)]
terminate called after throwing an instance of 'std::exception'
terminate called recursively

Program received signal SIGABRT, Aborted.
[Switching to Thread 1 (LWP 1)]
0xfffffd7fff0ae88a in _lwp_kill () from /lib/64/libc.so.1

#0 0xfffffd7fff0ae88a in _lwp_kill () from /lib/64/libc.so.1
#1 0xfffffd7fff0a98b3 in thr_kill () from /lib/64/libc.so.1
#2 0xfffffd7fff0577e9 in raise () from /lib/64/libc.so.1
#3 0xfffffd7fff03a7d0 in abort () from /lib/64/libc.so.1
#4 0xfffffd7ff46d1a56 in __gnu_cxx::__verbose_terminate_handler () at
../../../../../libstdc++-v3/libsupc++/vterminate.cc:48
#5 0xfffffd7ff46cef6a in __cxxabiv1::__terminate (handler=0x1) at
../../../../../libstdc++-v3/libsupc++/eh_terminate.cc:38
#6 0xfffffd7ff46cefb3 in std::terminate () at
../../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48
#7 0xfffffd7ff46cf03e in __cxxabiv1::__cxa_rethrow () at
../../../../../libstdc++-v3/libsupc++/eh_throw.cc:116
#8 0xfffffd7ff46d1af6 in __gnu_cxx::__verbose_terminate_handler () at
../../../../../libstdc++-v3/libsupc++/vterminate.cc:78
#9 0xfffffd7ff46cef6a in __cxxabiv1::__terminate (handler=0x1) at
../../../../../libstdc++-v3/libsupc++/eh_terminate.cc:38
#10 0xfffffd7ff46cefb3 in std::terminate () at
../../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48
#11 0xfffffd7ff46cf0b6 in __cxxabiv1::__cxa_throw (obj=<value
optimized out>, tinfo=<value optimized out>, dest=<value optimized
>)
at ../../../../../libstdc++-v3/libsupc++/eh_throw.cc:83
#12 0xfffffd7ff4a22fd8 in py_to_agg_transformation_matrix
(obj=0x774380, errors=<value optimized out>) at
src/agg_py_transforms.cpp:22
#13 0xfffffd7ff4a32e7c in _path_module::update_path_extents
(this=<value optimized out>, args=...) at src/path.cpp:380
#14 0xfffffd7ff4a34d90 in
Py::ExtensionModule<_path_module>::invoke_method_varargs (this=<value
optimized out>,
method_def=<value optimized out>, args=...) at
./CXX/Python2/ExtensionModule.hxx:184
#15 0xfffffd7ff4a209b7 in Py::method_varargs_call_handler
(_self_and_name_tuple=<value optimized out>, _args=<value optimized
>)
at CXX/Python2/cxx_extensions.cxx:1714
#16 0x00000000004a6071 in call_function (f=0x2024770, throwflag=<value
optimized out>)
at /usr/local/src/lang/Python-2.7.1/Python/ceval.c:4012
#17 PyEval_EvalFrameEx (f=0x2024770, throwflag=<value optimized out>)
at /usr/local/src/lang/Python-2.7.1/Python/ceval.c:2665
#18 0x00000000004a79c1 in PyEval_EvalCodeEx (co=0x124e230,
globals=<value optimized out>, locals=<value optimized out>,
args=0x2024910,
argcount=<value optimized out>, kws=0x3, kwcount=2,
defs=0x155c888, defcount=3, closure=0x0)