可能 MS/Intel Fortran 模块与 GNU Fortran?

Possible MS/Intel Fortran modules with GNU Fortran?

我的任务是调整一些最初使用 Compaq Visual Fortran 编译的 20 年前的代码。我希望使用 GNU 的 gfortran 而不是昂贵的 Intel Visual Fortran。但是,该代码依赖于几个似乎仅适用于 IVF 的模块:

如果我能够获得这些模块的副本,我是否能够将它们与 gfortran 而不是 Intel 一起使用? (顺便说一句,我是一个完整的 Fortran 初学者。)

我能找到的最接近的问题是: Intel Fortran to GNU Fortran Conversion

...但是这个问题似乎更多是关于 makefile 和重写 OP 自己的代码,而不是专门关于在另一个编译器中使用来自一个编译器的模块。

在此先感谢您的帮助。

正如评论所说,答案是否定的

如果您想将使用 Compaq Visual Fortran 扩展的程序移植到 gfortran,您需要用标准 Fortran 指令替换它们或使用其他库(独立于任何编译器)。

Fortran 是一种规范化语言(最新标准是 Fortran 2003、2008、2018):如果你坚持标准,你将没有问题(或很少有问题)使用其他编译器构建你的项目。如果不这样做,您将失去优势...

这不是答案 - 太长了,无法发表评论。使用 quickwin,查看损坏情况的最简单方法是删除以下内容之一

USE DFLIB
USE IFQWIN

然后看看从木制品中掉下来的东西。你可能有

  1. 绝对没有 - 这意味着它是一个控制台应用程序。他们使用 quickwin 的目的只是一个可滚动的输出
  2. SETWINDOWCONFIG、GETWINDOWCONFIG、SETWSIZEQQ、GETWSIZEQQ。这也是一个控制台应用程序。他们所做的只是相对于 window 大小更改可滚动区域。
  3. GETCHARQQ、FOCUSQQ - 这些通常是交互式对话框
  4. APPENDMENUQQ - 他们修改了下拉菜单以添加额外的功能。
  5. ARC、LINETO、OUTGTEXT - 这是一个图形程序。您需要将它们转换为 dislin 或 pgplot 之类的东西或一些图形库。

我必须转换的大多数 quickwin 程序要么是 1,要么是 2。我只遇到过一次 5。当 IVF 被称为 PowerFortran 时,我用 3 和 4 和 5 写了一个。