dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #03316
Re: pydolfin, seg. fault
Johan Jansson skrev den 16/09-2006 f�de:
> On Sat, Sep 16, 2006 at 02:04:41AM +0200, Ola Skavhaug wrote:
> > SInce I have no other version that the recently downloaded Dolfin-0.6.2-1,
> > I don't see that the partial dependency applies. All the souce code was
> > built at the same time. I'll check it though, just to make sure I havn't
> > done anything spookey.
> >
>
> You're right. Then I don't know what could be wrong. But it's great
> that PyDOLFIN is getting some testing, there's no reason it should
> fail like this.
poissonsolver.py also fails. This is the call stack from gdb:
/home/skavhaug/extsoft/include/dolfin/Function.h:39: Warning(401): Nothing
known about base class 'Variable'. Ignored.
/home/skavhaug/extsoft/include/dolfin/Function.h:39: Warning(401): Nothing
known about base class 'TimeDependent'. Ignored.
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1210062176 (LWP 31873)]
0xb7e68d1a in strcmp () from /lib/tls/i686/cmov/libc.so.6
(gdb) where
#0 0xb7e68d1a in strcmp () from /lib/tls/i686/cmov/libc.so.6
#1 0xb6b2ed38 in SWIG_TypeCheck (
c=0x645f705f <Address 0x645f705f out of bounds>, ty=0xb7cbe8c8)
at poissonform_wrap.cpp:432
#2 0xb6b311bb in SWIG_Python_ConvertPtrAndOwn (obj=0xb7d9b2ec,
ptr=0xbf88d5f8, ty=0xb7cbe8c8, flags=0, own=0x0)
at poissonform_wrap.cpp:1980
#3 0xb6b318fa in _wrap_new_PoissonLinearForm (args=0xb7c9b75f)
at poissonform_wrap.cpp:5883
#4 0x0805946c in PyObject_Call ()
#5 0x080b4aba in PyEval_EvalFrame ()
#6 0x080b771f in PyEval_EvalCodeEx ()
#7 0x080fc03d in PyFunction_SetClosure ()
#8 0x0805946c in PyObject_Call ()
#9 0x0805f005 in PyMethod_New ()
#10 0x0805946c in PyObject_Call ()
#11 0x0808adc5 in _PyType_Lookup ()
#12 0x0808cee8 in _PyObject_SlotCompare ()
#13 0x0805946c in PyObject_Call ()
#14 0x080b45db in PyEval_EvalFrame ()
#15 0x080b771f in PyEval_EvalCodeEx ()
#16 0x080b7965 in PyEval_EvalCode ()
#17 0x080d94cc in PyRun_FileExFlags ()
#18 0x080d976c in PyRun_SimpleFileExFlags ()
#19 0x08055b33 in Py_Main ()
#20 0xb7e13ea2 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
#21 0x08054fa1 in _start ()
As you can see, the problem is somewhere in the cross language polymorphism
mechanism in swig:
class Source(Function):
...
f = Source()
L = forms.PoissonLinearForm(f) # Seg. faults
Ola
> >
> > > To debug the C++ part of PyDOLFIN you can just run python through the
> > > debugger:
> > >
> > > gdb python
> > > run elasticitysolver.py
> > >
> > > then "bt" for a back trace for example.
> > >
> > > Johan
> > >
> > Sure. I'll check it out. It looks strange, though. Have you built pydolfin
> > with the same swig version as I use? I have recently seen some strange
> > swig behaviour leading to derg. faults in PyCC (our PDE system).
> >
> > Ola
> >
>
> I'm running 1.3.29 as well, with no problems. I'm surprised how well
> SWIG works considering it's so ad-hoc and complex.
>
> Johan
References
-
pydolfin, seg. fault
From: Ola Skavhaug, 2006-09-15
-
Re: pydolfin, seg. fault
From: Ola Skavhaug, 2006-09-15
-
Re: pydolfin, seg. fault
From: Johan Jansson, 2006-09-15
-
Re: pydolfin, seg. fault
From: Ola Skavhaug, 2006-09-16
-
Re: pydolfin, seg. fault
From: Johan Jansson, 2006-09-16