用户定义的派生类型IO文件在gfortran上编译

时间:2017-06-26 14:08:30

标签: fortran gfortran

我正在尝试使用GNU Fortran编译this link示例1中提供的示例代码。我已将源代码放在名为“Test”的.f95文件中,并尝试使用

cmd中编译它

gfortran test.95

这会引发很多错误,如下所示:

      GENERIC :: READ (FORMATTED) => UDIO_READ_ARRAY
                    1
Error: Expected '=>' at (1)
test.f95:12:17:

   INTERFACE WRITE(FORMATTED)
                 1
Error: Syntax error: Trailing garbage in INTERFACE statement at (1)
test.f95:13:21:

      MODULE PROCEDURE UDIO_WRITE_ARRAY
                     1
Error: MODULE PROCEDURE at (1) must be in a generic module interface
test.f95:14:5:

   END INTERFACE
     1
Error: Expecting END MODULE statement at (1)
test.f95:51:6:

   USE TYPES
      1
Fatal Error: Can't open module file 'types.mod' for reading at (1): No such file
 or directory
compilation terminated.

为什么会这样?我该如何解决?

1 个答案:

答案 0 :(得分:1)

为什么会这样?

因为gfortran 5.1.0不支持派生类型输入/输出(DTIO)。

我该如何解决?

下载MinGW-w64版本> = 7.1.0 https://sourceforge.net/projects/mingw-w64/files