关于Fortran中,use netcdf的问题
-
我在编译时,遇到了如下问题:
mpif90 -c -I/usr/sw-mpp/include -DSYSLINUX -DLINUX -DCPRUNKNOWNCPR -DSPMD -DHAVE_MPI -DUSEMPIIO -D_NETCDF -D_NOPNETCDF -D_NOUSEMCT -D_USEBOX -DNO_SIZEOF -I/usr/sw-mpp/include -I/usr/sw-cluster/apps/netcdf-c-4.4.1-disable-netcdf-4/include pio_types.F90
module pio_types
^
swopenf95-855 f90: ERROR PIO_TYPES, File = pio_types.F90, Line = 2, Column = 8
The compiler has detected errors in module "PIO_TYPES". No module information file will be created for this module.use netcdf ! _EXTERNAL ^
swopenf95-292 f90: ERROR PIO_TYPES, File = pio_types.F90, Line = 11, Column = 10
"NETCDF" is specified as the module name on a USE statement, but the compiler cannot find it.integer, public, parameter :: PIO_global = nf90_global
^
swopenf95-868 f90: ERROR PIO_TYPES, File = pio_types.F90, Line = 291, Column = 47
"NF90_GLOBAL" is used in a constant expression, therefore it must be a constant.integer, public, parameter :: PIO_unlimited = nf90_unlimited
^
但是我已经module load了netcdf,在终端which ncdump可以看到路径。
- 编译环境
mpi:mpif90
c: mpicc
串行:sw5cc、sw5f90 - netcdf
module中每个版本都试过,报错相同。
包括:
x86/netcdf/4.4.1-c-disable-netcdf-4
x86/netcdf/4.4.4-fortran
x86/netcdf/4.6.1-with-netcdf
x86/netcdf/4.6.1-with-parallel
- 编译环境
-
你如果要用神威的程序就不能用X86的netcdf库。
神威的netcdf在这里有一个/usr/sw-mpp/apps/lib/netcdf
编译加-I/usr/sw-mpp/apps/lib/netcdf/include
链接加-L/usr/sw-mpp/apps/lib/netcdf/lib -lnetcdf
-
好的,谢谢,我前两天已经自己找到这个库了,netcdf4.1.2。
那么请问有高版本的或者说加上hdf5特性的netcdf吗?这个我还没有找到。