Intel FORTRAN (ifort) and IRAF Libraries
gmand wrote on Apr 08, 2006
I'm trying to recompile some FORTRAN programs (in Redhat Linux 9) using the Intel ifort compiler. I'm getting "undefined reference" messages in the IRAF libraries (libimfort, libsys, etc.) I suspect that when I initially installed IRAF a couple of years ago those libraries used g77. Is there a way to re-build them using ifort without installing IRAF again?
Mike Fitzpatrick wrote on Apr 08, 2006
Hi George,
IRAF is compiled using F2C/GCC and I suspect you're missing the f2c library routines. These can normally be added with the flags
-L$iraf/unix/bin.redhat -lf2c -lc
but I've never tried the Intel compilers under linux and would need to know specifically which references are being undefined. Note there is also a "-lcompat" flag sometimes needed, this library is also found with the above -L path flag so jusst add it.
I'm assuming you've got the correct Intel flags defined and that there are no obvious incompatabilities with the F2C/GCC libs, but if you still have problems please post specific error messages.
Cheers,
-Mike
IRAF is compiled using F2C/GCC and I suspect you're missing the f2c library routines. These can normally be added with the flags
-L$iraf/unix/bin.redhat -lf2c -lc
but I've never tried the Intel compilers under linux and would need to know specifically which references are being undefined. Note there is also a "-lcompat" flag sometimes needed, this library is also found with the above -L path flag so jusst add it.
I'm assuming you've got the correct Intel flags defined and that there are no obvious incompatabilities with the F2C/GCC libs, but if you still have problems please post specific error messages.
Cheers,
-Mike
gmand wrote on Apr 08, 2006
Hi Mike,
Thanks for the quick reply. There is no libcompat.a in $iraf/unix/bin.redhat (I'm running 2.12.1 under RH 9). Here are the references that are unresolved:
unresolved : s_copy
Referenced in libimfort.a(imemsg.o)
Referenced in libvops.a(f77pak.o)
unresolved : i_len
Referenced in libimfort.a(imemsg.o)
Referenced in libimfort.a(imfdir.o)
Referenced in libvops.a(f77upk.o)
Referenced in libvops.a(f77pak.o)
unresolved : pow_ri
Referenced in libsys.a(ctod.o)
Referenced in libsys.a(dtoc.o)
Referenced in libsys.a(dtoc3.o)
unresolved : pow_di
Referenced in libsys.a(ctod.o)
Referenced in libsys.a(dtcscl.o)
I will try adding libf2c.a and see what happens.
Thanks for the quick reply. There is no libcompat.a in $iraf/unix/bin.redhat (I'm running 2.12.1 under RH 9). Here are the references that are unresolved:
unresolved : s_copy
Referenced in libimfort.a(imemsg.o)
Referenced in libvops.a(f77pak.o)
unresolved : i_len
Referenced in libimfort.a(imemsg.o)
Referenced in libimfort.a(imfdir.o)
Referenced in libvops.a(f77upk.o)
Referenced in libvops.a(f77pak.o)
unresolved : pow_ri
Referenced in libsys.a(ctod.o)
Referenced in libsys.a(dtoc.o)
Referenced in libsys.a(dtoc3.o)
unresolved : pow_di
Referenced in libsys.a(ctod.o)
Referenced in libsys.a(dtcscl.o)
I will try adding libf2c.a and see what happens.
Last post on Apr 08, 2006