[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
970602: compiling .F files with NAG f90
- Subject: 970602: compiling .F files with NAG f90
- Date: Mon, 02 Jun 97 08:55:49 -0600
Steve,
>Date: 2 Jun 1997 09:19:34 -0500
>From: "Steve Mauget" <address@hidden>
>Organization: USDA
>To: "Steve Emmerson" <address@hidden>
>Subject: Re: 970530: compiling .F fil
>Keywords: 199706021417.IAA27579
In the above message, you wrote:
> Steve :
>
> In connection with our v. 3.3 installation problem on our
> SGI, below are the output of:
>
> I. uname -a
> II. env
> IIIa. Standard output and error for "configure --prefix=/usr/local"
> IIIb. Config.log
> IV. The standard output and error for the "make" of src/nf_test
>
> Thanks for the help,
>
> Steve M.
>
> ######################################################################
> I. IRIX lbk155 6.2 03131015 IP22
> ######################################################################
> II.
> _=/usr/sbin/xwsh
> LANG=
> PATH=.:/usr/sbin:/usr/bsd:/sbin:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin:/usr/local/lib/f90:/usr/local/lib/grads:/usr/local/lib/grads/xample:/usr/etc:/usr/lib:/lib:/usr/local/lib/groff
> NOMSGLABEL=1
> XUSERFILESEARCHPATH=/usr/people/mauget/.desktop-lbk155/%N:/usr/people/mauget/%N:/usr/people/mauget/%L/%N%C:/usr/people/mauget/%l/%N%C:/usr/people/mauget/%N%C:/usr/people/mauget/%L/%N:/usr/people/mauget/%l/%N
> LOGNAME=mauget
> MAIL=/usr/mail/mauget
> USER=mauget
> MSGVERB=text:action
> LASTLOGIN=Last login: Sat May 31 10:05:16 CDT 1997 on :0
> DISPLAY=:0.0
> SHELL=/bin/csh
> HOME=/usr/people/mauget
> TERM=iris-ansi
> PWD=/temp/netcdf-3.3/src
> TZ=CST6CDT
> NOMSGSEVERITY=1
> WINDOWID=71303172
> PS1=#
> CC=/bin/c89
> FC=/usr/local/bin/f90
> FFLAGS=-g
> CXX=
> CPPFLAGS=
> CFLAGS=-g
The above looks OK.
> ######################################################################
> IIIa.
> creating cache ./config.cache
> checking for m4... m4
> checking user-defined C compiler "/bin/c89"
> checking C compiler... works
> checking for how to make dependencies... cc -M
> configure: warning: Empty CXX variable
> configure: warning: The C++ interface will not be built
> checking user-defined FORTRAN compiler "/usr/local/bin/f90"... works
> checking for math library
> checking for -lc... no
> checking for -lm... yes
> checking FORTRAN-type equivalent to netCDF "byte"... integer*1
> checking FORTRAN-type equivalent to C "signed char"... integer*1
> checking FORTRAN fill-value for netCDF version 2 byte... -127
> checking FORTRAN-type equivalent to netCDF "short"... integer*2
> checking FORTRAN-type equivalent to C "short"... integer*2
> checking FORTRAN-type equivalent to netCDF "long"... integer*4
> checking FORTRAN-type equivalent to C "int"... integer
> checking FORTRAN-type equivalent to netCDF "float"... real*4
> checking FORTRAN-type equivalent to C "float"... real*4
> checking FORTRAN-type equivalent to netCDF "double"... real*8
> checking FORTRAN-type equivalent to C "double"... real*8
> checking for ar... ar
> checking for ranlib... :
> checking how to run the C preprocessor... /bin/c89 -E
> checking for stdlib.h... yes
> checking for sys/types.h... yes
> checking for strerror... yes
> checking for ftruncate... yes
> checking for st_blksize in struct stat... yes
> checking whether cross-compiling... no
> checking for IEEE floating point format... yes
> checking for ANSI C header files... yes
> checking for size_t... yes
> checking for off_t... yes
> checking for ssize_t... yes
> checking for ptrdiff_t... yes
> checking for uchar... no
> checking whether char is unsigned... yes
> checking whether byte ordering is bigendian... yes
> checking size of short... 2
> checking size of int... 4
> checking size of long... 4
> checking size of float... 4
> checking size of double... 8
> checking size of off_t... 4
> checking size of size_t... 4
> checking for command to create manual-page index...
> checking binary distribution directory... /home/ftp/pub/binary/dummy_system
> updating cache ./config.cache
> creating ./config.status
> creating macros.make
> creating libsrc/ncconfig.h
> creating fortran/netcdf-cpp.inc
The above looks OK.
>
> ######################################################################
> IIIb.
>
> This file contains any messages produced by compilers while
> running configure, to aid debugging if configure makes a mistake.
>
> configure:989: /bin/c89 -c -g conftest.c 1>&5
> configure:1224: /usr/local/bin/f90 -c -g conftest.f
> Extension: conftest.f, line 1: TAB format input
> Extension: conftest.f, line 2: TAB format input
> [f90 continuing despite warning messages]
> configure:1313: /usr/local/bin/f90 -c -g conftest.F
> File with unknown suffix .F passed to ld
Hmm... I wonder if the last command above exited with status 0 (i.e.
success). If it did, then the configure script would think that the
FORTRAN compiler correctly handles *.F files. To see if this is the
case, would you please execute the following commands in a Standard
shell:
touch tmp.F
/usr/local/bin/f90 -c tmp.F
echo $?
If the above succeeds (exit status 0), then would you please see if the
following command fails:
/usr/local/bin/f90 -o tmp tmp.F
If the above command fails, then the configure script should use it to
determine whether or not the FORTRAN compiler correctly handles *.F
files. Try making the following modifications to the configure script:
1. Locate the first occurance of the symbol COMPILE_F in the
configure script.
2. Change the subsequent assignment (15 lines later)
doit='$FC -c ${FFLAGS-} conftest.F'
to
doit='$FC -o conftest ${FFLAGS-} conftest.F'
Then re-execute the configure script.
To verify that the configure now believes that the FORTRAN compiler
doesn't handle *.F files, look at the definition for the macro COMPILE.F
in the file macros.make. It should be the empty string. This should
cause the makefiles to use a more complicated rule (involving the C
preprocessor) to compile *.F files.
Please let me know if this helps.
Since we're trying to transition to netCDF-3 from netCDF-2, would you
please try this solution before working on netCDF-2? Thanks.
--------
Steve Emmerson <address@hidden>