
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. 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. 'ldd' shows these library dependencies: $ ldd ./2.2/lib/python2.2/site-packages/scipy/linalg/_flinalg.so libfsu.so.1 => /opt/SUNWspro/lib/libfsu.so.1 libF77.so.2 => /opt/SUNWspro/lib/libF77.so.2 libM77.so.2 => /opt/SUNWspro/lib/libM77.so.2 libsunmath.so.1 => /opt/SUNWspro/lib/libsunmath.so.1 libf77compat.so.1 => /opt/SUNWspro/lib/libf77compat.so.1 libm.so.1 => /usr/lib/libm.so.1 libc.so.1 => /usr/lib/libc.so.1 libdl.so.1 => /usr/lib/libdl.so.1 /usr/platform/SUNW,Ultra-2/lib/libc_psr.so.1 I will try building with debug symbols to see if it gives me any more useful information. Thx, Skip

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
participants (2)
-
Pearu Peterson
-
Skip Montanaro