>From: Daniel Neumann <daniel.neumann@xxxxxxxxxxxxxxxxx>
>
>Hi Anton,
>
>Does the error arise on the first occurrence of a function or constant
>of the netCDF library? If yes, it looks to me that the compiler doesn't
>know about your netCDF library.
>
>Which flags (include and library flags) do you use to include the netcdf
>library? How does your compiler call look like?
>
>It should be something like:
>
>mpiifort -c
>-I/cm/shared/libraries/intel_build/netcdf-4-intel-16.par/include -o
>cgca_m2netcdf.o cgca_m2netcdf.f90
Daniel, thank you for taking the time.
Yes, this is essentially what I do.
I also use ifort -coarray switch.
This is the full output:
newblue1> mpiifort -coarray=distributed -c
-I/cm/shared/libraries/intel_build/netcdf-4-intel-16.par/include
cgca_m2netcdf.f90
cgca_m2netcdf.f90(157): error #6404: This name does not have a type, and must
have an explicit type. [NF90_NETCDF4]
call check( nf90_create(fname, ior(nf90_netcdf4,nf90_mpiio), ncid, &
-----------------------------------^
cgca_m2netcdf.f90(157): error #6404: This name does not have a type, and must
have an explicit type. [NF90_MPIIO]
call check( nf90_create(fname, ior(nf90_netcdf4,nf90_mpiio), ncid, &
------------------------------------------------^
cgca_m2netcdf.f90(157): warning #7319: This argument's data type is
incompatible with this intrinsic procedure; procedure assumed EXTERNAL. [IOR]
call check( nf90_create(fname, ior(nf90_netcdf4,nf90_mpiio), ncid, &
-----------------------------------^
cgca_m2netcdf.f90(157): error #6404: This name does not have a type, and must
have an explicit type. [IOR]
call check( nf90_create(fname, ior(nf90_netcdf4,nf90_mpiio), ncid, &
-------------------------------^
cgca_m2netcdf.f90(158): error #6627: This is an actual argument keyword name,
and not a dummy argument name. [COMM]
comm=comm, info=MPI_INFO_NULL))
-------^
cgca_m2netcdf.f90(158): error #6627: This is an actual argument keyword name,
and not a dummy argument name. [INFO]
comm=comm, info=MPI_INFO_NULL))
------------------^
cgca_m2netcdf.f90(176): error #6404: This name does not have a type, and must
have an explicit type. [NF90_DEF_VAR_FILL]
call check ( nf90_def_var_fill(ncid, varid, 1, 1) )
-------------^
cgca_m2netcdf.f90(184): error #6404: This name does not have a type, and must
have an explicit type. [NF90_COLLECTIVE]
call check( nf90_var_par_access(ncid, varid, nf90_collective) )
---------------------------------------------^
cgca_m2netcdf.f90(184): error #6404: This name does not have a type, and must
have an explicit type. [NF90_VAR_PAR_ACCESS]
call check( nf90_var_par_access(ncid, varid, nf90_collective) )
------------^
compilation aborted for cgca_m2netcdf.f90 (code 1)
newblue1>
Again, the include dir seems to contain the right files:
newblue1> ls -al /cm/shared/libraries/intel_build/netcdf-4-intel-16.par/include
total 680
drwxr-xr-x 2 root root 4096 Mar 8 15:07 .
drwxr-xr-x 6 root root 4096 Mar 8 14:45 ..
-rw-r--r-- 1 root root 58489 Mar 8 14:45 netcdf.h
-rw-r--r-- 1 root root 42609 Mar 8 15:07 netcdf.inc
-rw-r--r-- 1 root root 214523 Mar 8 15:07 netcdf.mod
-rw-r--r-- 1 root root 1180 Mar 8 14:45 netcdf_par.h
-rw-r--r-- 1 root root 1382 Mar 8 15:07 typesizes.mod
newblue1>
Thanks
Anton