[SciPy-dev] segfault in scipy.test()

Pearu Peterson pearu at cens.ioc.ee
Tue Oct 1 09:38:13 CDT 2002


On Tue, 1 Oct 2002, Skip Montanaro wrote:

> 
> Does this traceback seem familiar to anyone?
> 
>     Program received signal SIGSEGV, Segmentation fault.
>     0xfde47060 in copy_ND_array ()
>        from /home/skip/tmp/sun_cc/2.2/lib/python2.2/site-packages/scipy/linalg/_flinalg.so
>     (gdb) bt
>     #0  0xfde47060 in copy_ND_array ()
>        from /home/skip/tmp/sun_cc/2.2/lib/python2.2/site-packages/scipy/linalg/_flinalg.so
>     #1  0xfde468c4 in array_from_pyobj ()
>        from /home/skip/tmp/sun_cc/2.2/lib/python2.2/site-packages/scipy/linalg/_flinalg.so
>     #2  0xfde478d4 in f2py_rout__flinalg_ddet_r ()
>        from /home/skip/tmp/sun_cc/2.2/lib/python2.2/site-packages/scipy/linalg/_flinalg.so
>     ... (rest of call stack is Python "call this, eval that" stuff) ...
> 
> Here's what I have to go on at the moment.  The build environment is Solaris
> 8 using Sun's Forte v7 compilers.

What f2py version are you using? If it is 2.13.175-1250, then upgrade to
the latest might fix this (since 2.13.175-1250 there are few fixes in
f2py that solve various segmentation faults that showed up especially on
non-linux platforms).

To be sure that f2py is working correctly, run also its tests:

cd f2py2e/tests/f77
python return_integer.py
python return_real.py
python return_logical.py
python return_complex.py
python return_character.py

> The module was build using these commands:
> 
>     mycc -DNDEBUG -O
>         -I/home/skip/tmp/sun_cc/2.2/lib/python2.2/site-packages/f2py2e/src \
>         -I/home/skip/tmp/sun_cc/2.2/include/python2.2 -c \
>         build/temp.solaris-2.8-sun4u-2.2/_flinalgmodule.c -o \
>         build/temp.solaris-2.8-sun4u-2.2/_flinalgmodule.o 
> 
>     f77 build/temp.solaris-2.8-sun4u-2.2/fortranobject.o \
>         build/temp.solaris-2.8-sun4u-2.2/_flinalgmodule.o \
>         -L/home/skip/local/SunOS/lib/atlas -L/usr/lib \
>         -Lbuild/temp.solaris-2.8-sun4u-2.2 \
>         -Lbuild/temp.solaris-2.8-sun4u-2.2 \
>         -Lbuild/temp.solaris-2.8-sun4u-2.2 \
>         -Lbuild/temp.solaris-2.8-sun4u-2.2 -L/usr/local/ssl/lib \
>         -L/home/skip/local/SunOS/lib -L/usr/local/ssl/7.0/lib \
>         -R/usr/local/ssl/lib -R/home/skip/local/SunOS/lib \
>         -R/usr/local/ssl/7.0/lib -l_flinalg -lfblas -llapack -lblas -lfsu \
>         -lF77 -lM77 -lsunmath -lmvec -lf77compat -lm -o \
>         build/lib.solaris-2.8-sun4u-2.2/scipy/linalg/_flinalg.so -Bdynamic \
>         -G
> 
> "mycc" is a shell script which selects between C or C++ compilers based on
> its command line arguments.  Anyone know how to get rid of the "-L/usr/lib"?
> It almost certainly shouldn't be there.

What's the output of

  python scipy_distutils/system_info.py

? This might show where "-L/usr/lib" comes in and also give hints if
anything is wrong.

Pearu




More information about the Scipy-dev mailing list