netcdf-fortran build错误:不识别“&”字符?


Error: Symbol ‘nf_double’ at (1) has no IMPLICIT type
util03.F:1426:35:

         else if (type .eq. NF_FLOAT) then
                                   1
Error: Symbol ‘nf_float’ at (1) has no IMPLICIT type
util03.F:1424:33:

         else if (type .eq. NF_INT) then
                                 1
Error: Symbol ‘nf_int’ at (1) has no IMPLICIT type
util03.F:1422:35:

         else if (type .eq. NF_SHORT) then
                                   1
Error: Symbol ‘nf_short’ at (1) has no IMPLICIT type
util03.F:1419:37:

             external_min = X_BYTE_MIN
                                     1
Error: Symbol ‘x_byte_min’ at (1) has no IMPLICIT type
util03.F:1421:37:

             external_min = X_CHAR_MIN
                                     1
Error: Symbol ‘x_char_min’ at (1) has no IMPLICIT type
util03.F:1429:39:

             external_min = X_DOUBLE_MIN
                                       1
Error: Symbol ‘x_double_min’ at (1) has no IMPLICIT type
util03.F:1427:38:

             external_min = X_FLOAT_MIN
                                      1
Error: Symbol ‘x_float_min’ at (1) has no IMPLICIT type
util03.F:1425:36:

             external_min = X_INT_MIN
                                    1
Error: Symbol ‘x_int_min’ at (1) has no IMPLICIT type
util03.F:1423:38:

             external_min = X_SHORT_MIN
                                      1
Error: Symbol ‘x_short_min’ at (1) has no IMPLICIT type
util03.F:1410:8:

         function external_min(type)
        1
Error: Function ‘external_min’ at (1) has no IMPLICIT type
util03.F:1446:29:

         if (type .eq. NF_BYTE) then
                             1
Error: Symbol ‘nf_byte’ at (1) has no IMPLICIT type
util03.F:1448:34:

         else if (type .eq. NF_CHAR) then
                                  1
Error: Symbol ‘nf_char’ at (1) has no IMPLICIT type
util03.F:1456:36:

         else if (type .eq. NF_DOUBLE) then
                                    1
Error: Symbol ‘nf_double’ at (1) has no IMPLICIT type
util03.F:1454:35:

         else if (type .eq. NF_FLOAT) then
                                   1
Error: Symbol ‘nf_float’ at (1) has no IMPLICIT type
util03.F:1452:33:

         else if (type .eq. NF_INT) then
                                 1
Error: Symbol ‘nf_int’ at (1) has no IMPLICIT type
util03.F:1450:35:

         else if (type .eq. NF_SHORT) then
                                   1
Error: Symbol ‘nf_short’ at (1) has no IMPLICIT type
util03.F:1447:37:

             external_max = X_BYTE_MAX
                                     1
Error: Symbol ‘x_byte_max’ at (1) has no IMPLICIT type
util03.F:1449:37:

             external_max = X_CHAR_MAX
                                     1
Error: Symbol ‘x_char_max’ at (1) has no IMPLICIT type
util03.F:1457:39:

             external_max = X_DOUBLE_MAX
                                       1
Error: Symbol ‘x_double_max’ at (1) has no IMPLICIT type
util03.F:1455:38:

             external_max = X_FLOAT_MAX
                                      1
Error: Symbol ‘x_float_max’ at (1) has no IMPLICIT type
util03.F:1453:36:

             external_max = X_INT_MAX
                                    1
Error: Symbol ‘x_int_max’ at (1) has no IMPLICIT type
util03.F:1451:38:

             external_max = X_SHORT_MAX
                                      1
Error: Symbol ‘x_short_max’ at (1) has no IMPLICIT type
util03.F:1439:8:

         function external_max(type)
        1
Error: Function ‘external_max’ at (1) has no IMPLICIT type
util03.F:1473:57:

         real(rk8), external :: internal_min, internal_max
                                                         1
Error: Return type mismatch of function ‘internal_max’ at (1) (REAL(8)/UNKNOWN)
util03.F:1473:43:

         real(rk8), external :: internal_min, internal_max
                                           1
Error: Return type mismatch of function ‘internal_min’ at (1) (REAL(8)/UNKNOWN)
Makefile:834: recipe for target 'util03.o' failed
make[3]: *** [util03.o] Error 1
make[3]: 离开目录“/home/dell/test1/opt/src/netcdf/netcdf-fortran-4.5.2/nf_test”
Makefile:1188: recipe for target 'check-am' failed
make[2]: *** [check-am] Error 2
make[2]: 离开目录“/home/dell/test1/opt/src/netcdf/netcdf-fortran-4.5.2/nf_test”
Makefile:1191: recipe for target 'check' failed
make[1]: *** [check] Error 2
make[1]: 离开目录“/home/dell/test1/opt/src/netcdf/netcdf-fortran-4.5.2/nf_test”
Makefile:540: recipe for target 'check-recursive' failed

这是版本问题,还是gfortran版本问题?要怎样解决呢