[SciPy-user] Install failed for SciPy

eric jones eric at enthought.com
Mon Oct 14 09:46:19 EDT 2002


> -----Original Message-----
> From: scipy-user-admin at scipy.net [mailto:scipy-user-admin at scipy.net]
On
> Behalf Of Pearu Peterson
> Sent: Monday, October 14, 2002 6:43 AM
> To: scipy-user at scipy.net
> Subject: Re: [SciPy-user] Install failed for SciPy
> 
> 
> On Sun, 13 Oct 2002, Jeffrey B. Layton wrote:
> 
> > Good evening,
> >
> >    I've started to install SciPy and I received an error:
> >
> > ifc -shared build/temp.linux-i686-2.2/cephesmodule.o
> > build/temp.linux-i686-2.2/amos_wrappers.o
> > build/temp.linux-i686-2.2/specfun_wrappers.o
> > build/temp.linux-i686-2.2/toms_wrappers.o
> > build/temp.linux-i686-2.2/cdf_wrappers.o
> > build/temp.linux-i686-2.2/ufunc_extras.o -Lbuild/temp.linux-i686-2.2
> > -Lbuild/temp.linux-i686-2.2 -lamos -ltoms -lc_misc -lcephes -lmach
-lcdf
> > -lspecfun -o build/lib.linux-i686-2.2/scipy/special/cephes.so
> > /opt/intel/compiler60/ia32/lib/libF90.a(int8.o): In function
`isnan':
> > int8.o(.text+0x4c40): multiple definition of `isnan'
> > build/temp.linux-i686-
> 2.2/libcephes.a(isnan.o):/home/laytonj/RESEARCH/PYTHON/SCIPY/SciPy-
> 0.2.0_alpha_142.4307/special/cephes/isnan.c:125:
> > first defined here
> > ld: Warning: size of symbol `isnan' changed from 51 to 80 in
> > /opt/intel/compiler60/ia32/lib/libF90.a(int8.o)
> > error: command 'ifc' failed with exit status 1
> 
> Because the symbol `isnan' has different sizes in libcephes.a and
> libF90.a, I am not sure that we can skip using isnan() function from
> cephes library in favor of the one in libF90.a -- they probably have
> different signatures and would crash python if we'd do that (though,
> I have not tested this statement).

I don't know, since cephes has been around so long, maybe they mimicked
its behavior.  Perhaps I'm being to optiomistic...

> 
> Currently, I don't have any better suggestion than use g77 compiler
for
> building/installing scipy:
>   setup.py build build_flib --fcompiler=Gnu
> or
>   setup.py build build_flib --fcompiler=Gnu install
> 
> Suggestions how to solve the problem of supporting Intel compiler are
> welcome.

Yes, I would be very interested in this also.

> One solution would be renaming isnan to cephes_isnan in cephes
library.
> Other ideas?

If the signatures are different, then this seems to be the best option.
Perhaps we should add a test in system_info that builds a little Fortran
file with isnan defined and tests to see if builds.  If so, we disable
the cephes version (that's assuming the its compatible -- perhaps
another tests).  
Hmmm.  cephes_isnan is easier and doesn't really have a downside
(right?).  Let's just do that.

eric





More information about the SciPy-User mailing list