[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

20030224: McIDAS 2002 compile problem on Solaris 9 SPARC



>From: David Fitzgerald <address@hidden>
>Organization: Millersville University of Pennsylvania
>Keywords: 200302242142.h1OLgOt05471 McIDAS-X v2002a

Hi Dave,

>Hopefully I have a easy one here.  I am trying to compile the newest
>McIDAS version from source.  I'm using a SUN Ultra-10 running Solaris
>9. The compilers are the SunOne Studio 4 compiler packages: f90 running
>in f77 mode, and cc.  My environment variables and .cshrc file are
>setup as per the installation instructions, however compilation fails
>pretty far into the run.  I have not attached the makelog file as I
>don't see anything unusual there, however, I have attached a copy of
>the compiler output to stdout starting just before compilation starts
>to crap out.  I am not sure if the problem lies with my compilers or
>with the source code in typeSizes.f90.  I didn't want to mess with the
>source code before checking with you if you have seen this before.
>Could you take a look at the stdout output and maybe tell me what is wrong?

There is no need to mess with source code.  The error you are seeing
is in the build of the Fortran 90 interface for netCDF.  The "solution"
I came up with when I ran into this problem was to simply "tell"
configure to not have the F90 interface built.

What you need to do is:

<login as 'mcidas'>
cd mcidas2002/src
make clobber

Next, define Unix environment variables to use the Sun Forte compilers
but not build the C++ or F90 interfaces (they are not used by McIDAS
anyway):

C-shell syntax:

# Defines for netCDF building with Sun compilers Forte 7
setenv CC cc
setenv CPPFLAGS -DNDEBUG
setenv CFLAGS -O
setenv FC f77
setenv FFLAGS -O
setenv F90
setenv CXX

>If it IS a compiler problem, it may be helpful for others who may want to use
>SunOne to know of the problem. 

I will be updating my web pages to reflect this as soon as I can get my
v2002b addendum ready for release (imminent).

>Thanks!

No worries...

>--Rout_of_Wolves_697_000
>Content-Type: TEXT/plain; name=STDOUT; charset=us-ascii; x-unix-mode=0664
>Content-Description: STDOUT
>Content-MD5: 7rKyNYmdReL1nYISgKAEwg==
>
>cc -c -O -I../libsrc  -DNDEBUG fort-varmio.c
>cc -c -O -I../libsrc  -DNDEBUG fort-varsio.c
>ar cru ../libsrc/libnetcdf.a fort-attio.o        fort-control.o  fort-dim.o   
>    fort-genatt.o        fort-geninq.o   fort-genvar.o   fort-lib.o      fort-
> misc.o     fort-v2compat.o     fort-vario.o     fort-var1io.o   fort-varaio.o
>    fort-varmio.o   fort-varsio.o
>ranlib ../libsrc/libnetcdf.a
>
>Returning to directory /software/mcidas/mcidas2002/netcdf
>
>
>Making `all' in directory /software/mcidas/mcidas2002/netcdf/f90
>
>f77 -c  typeSizes.f90
>NOTICE: Invoking /software/SunOne/SUNWspro/bin/f90 -f77 -ftrap=%none -c typeSi
> zes.f90
>typeSizes.f90:
>        typesizes:
>
>module typeSizes
>       ^         
>"typeSizes.f90", Line = 30, Column = 8: ERROR: The compiler has detected error
> s in module "TYPESIZES".  No module information file will be created for this
>  module.
>
>  integer, parameter ::   OneByteInt = selected_int_kind(2), &
>                                       ^                       
>"typeSizes.f90", Line = 33, Column = 40: ERROR: IMPLICIT NONE is specified in 
> the local scope, therefore an explicit type must be specified for function "S
> ELECTED_INT_KIND".
>                                       ^                       
>"typeSizes.f90", Line = 33, Column = 40: ERROR: "SELECTED_INT_KIND" must be a 
> constant to be used in an initialization expression.
>
>                          TwoByteInt = selected_int_kind(4), &
>                                       ^                       
>"typeSizes.f90", Line = 34, Column = 40: ERROR: "SELECTED_INT_KIND" must be a 
> constant to be used in an initialization expression.
>
>                         FourByteInt = selected_int_kind(9), &
>                                       ^                       
>"typeSizes.f90", Line = 35, Column = 40: ERROR: "SELECTED_INT_KIND" must be a 
> constant to be used in an initialization expression.
>
>                        EightByteInt = selected_int_kind(18)
>                                       ^                     
>"typeSizes.f90", Line = 36, Column = 40: ERROR: "SELECTED_INT_KIND" must be a 
> constant to be used in an initialization expression.
>
>                        FourByteReal = selected_real_kind(P =  6, R =  37), &
>                                       ^                                      
>"typeSizes.f90", Line = 39, Column = 40: ERROR: IMPLICIT NONE is specified in 
> the local scope, therefore an explicit type must be specified for function "S
> ELECTED_REAL_KIND".
>                                       ^                                      
>"typeSizes.f90", Line = 39, Column = 40: ERROR: "SELECTED_REAL_KIND" must be a
>  constant to be used in an initialization expression.
>
>                       EightByteReal = selected_real_kind(P = 13, R = 307)
>                                       ^                                   
>"typeSizes.f90", Line = 40, Column = 40: ERROR: "SELECTED_REAL_KIND" must be a
>  constant to be used in an initialization expression.
>
>    integer (kind =  OneByteInt) :: One
>                     ^                  
>"typeSizes.f90", Line = 51, Column = 22: ERROR: "ONEBYTEINT" is used in a cons
> tant expression, therefore it must be a constant.
>
>    integer (kind =  TwoByteInt) :: Two
>                     ^                  
>"typeSizes.f90", Line = 52, Column = 22: ERROR: "TWOBYTEINT" is used in a cons
> tant expression, therefore it must be a constant.
>
>    integer (kind = FourByteInt) :: Four
>                    ^                    
>"typeSizes.f90", Line = 53, Column = 21: ERROR: "FOURBYTEINT" is used in a con
> stant expression, therefore it must be a constant.
>
>    if (bit_size( One) == 8  .and. bit_size( Two) == 16 .and.  &
>        ^                                                        
>"typeSizes.f90", Line = 55, Column = 9: ERROR: IMPLICIT NONE is specified in t
> he host scope, therefore an explicit type must be specified for function "BIT
> _SIZE".
>
>f90comp: 64 SOURCE LINES
>f90comp: 13 ERRORS, 0 WARNINGS, 0 OTHER MESSAGES, 0 ANSI
>*** Error code 1
>make: Fatal error: Command failed for target `typeSizes.o'
>Current working directory /software/mcidas/mcidas2002/netcdf/f90
>*** Error code 1
>make: Fatal error: Command failed for target `subdir_target'
>Current working directory /software/mcidas/mcidas2002/netcdf
>*** Error code 1
>make: Fatal error: Command failed for target `f90/all'
>Current working directory /software/mcidas/mcidas2002/netcdf
>*** Error code 1
>make: Fatal error: Command failed for target `../netcdf/libsrc/libnetcdf.a'
>/software/mcidas/mcidas2002/src% 

Tom

>From address@hidden Tue Feb 25 08:27:21 2003
>Subject: RE: 20030224: McIDAS 2002 compile problem on Solaris 9 SPARC

Tom,

Thanks!  That fixed the problem.

Dave