NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.
To learn about what's going on, see About the Archive Site.
Gembuds, It turns out that g77 is storing these real functions as real*8 under 64-bit Linux systems. There are two work-around solutions: 1) explicitly declare the pr_sped (or any such GEMPAK function) you are using as real*8, e.g., program test real*8 pr_sped call in_bdta(iret) u = 5 v = 4 spd = pr_sped(u,v) print *,'spd = ',spd stop end This works for 64-bit ifort on the 64-bit Linux machines that have used 64-bit g77/gcc to compile the GEMPAK libraries. So the compile sequence looks like: source /usr/local/intel/fce/9.0/bin/ifortvars.csh # 64-bit ifort setenv GEMLIB /gemdir/NAWIPS-5.9.4/os/linux64/lib # 64-bit GEMLIB ifort test.f $GEMLIB/gemlib.a -lg2c2) use 32-bit ifort, 32-bit g2c, and 32-bit GEMPAK libraries. On a
64-bit RedHat box this was accomplished this way: source /usr/local/intel/fc/9.0/bin/ifortvars.csh # note fc not fce setenv GEMLIB /gemdir/NAWIPS-5.9.4/os/linux/lib # note linux not linux64 ifort test.f $GEMLIB/gemlib.a \ /usr/lib/gcc/x86_64-redhat-linux/3.4.3/32/libg2c.a # note /32/libg2c.a Another possible solution is to build GEMPAK with ifort. We have managed to do this in the past, but have found that a handful of programs are fouled up. Thanks to Harry Edmon for figuring this out. David -- David Ovens e-mail: ovens@xxxxxxxxxxxxxxxxxxxx Research Meteorologist phone: (206) 685-8108 Dept of Atm. Sciences plan: Real-time MM5 forecasting for the Box 351640 Pacific Northwest University of Washington http://www.atmos.washington.edu/mm5rt Seattle, WA 98195 Weather Graphics and Loops http://www.atmos.washington.edu/~ovens/loops On Tue, Apr 24, 2007 at 10:16:37PM -0700, David Ovens wrote:
Gembuds, I guess this must be an 'ifort' problem because I just figured out how to compile this on 64-bit machines with 'g77' and it works! g77 -fno-second-underscore test.f $GEMLIB/gemlib.a;a.out spd = 6.40312433 Still, can anyone get 'ifort' to work on this code on a 64-bit Linux box? David -- David Ovens e-mail: ovens@xxxxxxxxxxxxxxxxxxxx Research Meteorologist phone: (206) 685-8108 Dept of Atm. Sciences plan: Real-time MM5 forecasting for the Box 351640 Pacific Northwest University of Washington http://www.atmos.washington.edu/mm5rt Seattle, WA 98195 Weather Graphics and Loops http://www.atmos.washington.edu/~ovens/loops On Tue, Apr 24, 2007 at 10:09:07PM -0700, David Ovens wrote:Gembuds, I have this incredibly simple FORTAN code, test.f, that works fine on 32-bit Linux machines with any version of GEMPAK, but that fails miserably on all of my 64-bit Linux machines with any version of GEMPAK (I've tried 5.9.4 and 5.8.3ag3 specially built for 64-bit). I am curious if anyone out there can successfully run this on a 64-bit Linux machine. And, if you can, please share your $NAWIPS/config/Makefile.linux. Code test.f: program test call in_bdta(iret) u = 5 v = 4 spd = pr_sped(u,v) print *,'spd = ',spd stop end Compile and run: ifort test.f $GEMLIB/gemlib.a -lg2c; a.out Correct answer:spd = 6.40312464-bit Linux box answer: spd = -1.0842022E-19
gembud
archives: