This is the mail archive of the
mailing list for the GNU Fortran project.
Re: unresolved reference to _gfortran_pow_r8_i4
- From: Janne Blomqvist <blomqvist dot janne at gmail dot com>
- To: Anthony Stone <ajs1 at cam dot ac dot uk>
- Cc: fortran at gcc dot gnu dot org
- Date: Wed, 27 May 2009 16:03:13 +0300
- Subject: Re: unresolved reference to _gfortran_pow_r8_i4
- References: <4A1D2867.email@example.com>
Anthony Stone wrote:
I have a big program, compiled with gfortran/gcc-4.4.1 (20090515), that
uses the lapack/ATLAS library, also compiled with gfortran/gcc-4.4.1. I
get unresolved references to _gfortran_pow_r8_i4 from lapack library
routines. libgfortran.a contains _gfortran_pow_r8_i8 and
_gfortran_pow_r8_i16 but not _gfortran_pow_r8_i4. Is this a bug, or am I
doing something wrong?
You're doing something wrong, probably lapack was compiled with an older
version of gfortran. The _gfortran_pow_r*_i4 symbols were removed from
the library as of the 4.3 relase, IIRC. Since 4.3 gfortran instead
generates calls to powi, powil, powif which are already available in the
required GCC support library (libgcc). The benefit of this change is 1)
bloat reduction 2) the middle-end of the compiler is aware of these
functions and can potentially optimize usage of them better.