[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
971111: installing NetCDF 3.3.1 under Linux using fort77(1)
- Subject: 971111: installing NetCDF 3.3.1 under Linux using fort77(1)
- Date: Tue, 11 Nov 97 10:17:29 -0700
Alec,
>Date: Mon, 10 Nov 1997 12:00:14 +0200 (SAT)
>From: Alec Joubert <address@hidden>
>Organization: University of the Witwatersrand/Climatology Research Group
>To: Steve Emmerson <address@hidden>
>Subject: ongoing installation - success?
>Keywords: 199711051121.EAA12731
In the above message, you wrote:
> Steve, hi there
>
> I went away to the mountains, and the South African cricket team won it's
> quadrangular tournament in Pakistan. So yes, I had a good weekend. Hope
> you did too!
Thanks, but I was in bed all weekend with a sinus infection. :-(
>
> I seem to have succeeded with the netcdf installation, but am still having
> some hassles. In particlar, I want to ask you about a vast number of
> warning messages in the output of the "make test" command - test.log
> attached. The command did not fail, and the "make install" seemed to
> happen OK as well, but on compilation of a piece of my own fortran code,
> the same warning messages appear en masse, and the compilation fails.
>
> The reason for the more successful morning seems to be the fact that I
> installed a Redhat-linux rpms-version of fort77 (all details below). Are the
> warning messages a serious problem or can they be easily rectified with
> e.g. a different compilation option?
>
> Environment settings:
>
> uname-a:
> Linux crg 2.0.28 #6 Thu Feb 6 18:01:34 SAT 1997 i686
> Redhat Linux Version 4.0 (Colgate)
>
> CPPFLAGS='-DNDEBUG -Df2cFortran'
> CC=/usr/bin/cc
> CFLAGS=-O
> FC=/usr/bin/fort77 ! fort77 Version 1.14a
> FFLAGS=-O
> CXX=/usr/bin/c++
>
> Thanks again for all the help
>
> Alec
>
> -------------------------------------------------------------------------------
> Dr Alec Joubert
> Climatology Research Group Tel: +27 11 716 2998
> University of the Witwatersrand Fax +27 11 716 3161
> P.O. Wits 2050 Email: address@hidden
> SOUTH AFRICA WWW: http://crg.bpb.wits.ac.za
> -------------------------------------------------------------------------------
The numerous warning messages you're getting are like the following:
Warning on line 112: nf_put_varm_int declared EXTERNAL but never used.
Warning on line 112: nf_inq_varnatts declared EXTERNAL but never used.
Warning on line 112: nf_get_var1_real declared EXTERNAL but never used.
Warning on line 112: nf_put_vars_int declared EXTERNAL but never used.
Warning on line 112: nf_get_vara_int1 declared EXTERNAL but never used.
Warning on line 112: nf_put_att_text declared EXTERNAL but never used.
Warning on line 112: nf_put_var_text declared EXTERNAL but never used.
Warning on line 112: nf_redef declared EXTERNAL but never used.
Warning on line 112: nf_get_vara_int2 declared EXTERNAL but never used.
Warning on line 112: nf_get_varm_int1 declared EXTERNAL but never used.
These warnings are emitted because of the EXTERNAL declarations of the
netCDF Fortran routines in the include-file "netcdf.inc". There is no
good solution to this problem: either the include-file doesn't declare
the routines and it's up to the user to declare every netCDf routine
that they use or the include-file does declare the routines and the user
gets a bunch of warnings.
The best solution when using fort77(1) on a Linux system is to ensure
that the fort77(1) compiler sees the option "-Nx400" (this is
documented in the INSTALL file). This allows "netcdf.inc" to contain
many EXTERNAL statements.
I suggest the following:
1. Go to the top-level source directory.
2. Execute the command "make distclean".
3. Remove the file "config.cache" if it exists.
4. Set the following environment variables:
CPPFLAGS='-DNDEBUG -Df2cFortran'
CC=/usr/bin/cc
CFLAGS=-O
FC=/usr/bin/fort77 ! fort77 Version 1.14a
FFLAGS='-O -Nx400 -w' # Note the additional options
CXX=/usr/bin/c++
5. Execute the configure script.
Redirect standard output and standard error to a file.
If an error occurs, then stop and send me the file.
6. Execute the command "make".
Redirect standard output and standard error to a file.
If an error occurs, then stop and send me the file.
7. Execute the command "make test".
Redirect standard output and standard error to a file.
If an error occurs, then stop and send me the file.
8. Execute the command "make install".
Redirect standard output and standard error to a file.
If an error occurs, then stop and send me the file.
9. Execute the command "make clean".
Please let me know if this helps.
--------
Steve Emmerson <http://www.unidata.ucar.edu>