我希望能够在不共享其源代码的情况下共享 FORTRAN 95 模块。是否可以这样做(也许通过共享 .MOD 文件)?如果这是相关的,我在柏拉图上使用 Silverfrost FTN95 编译器。到目前为止,我只能通过使用外部模块的源代码来完成这项工作。下面是一个例子:

文件:module_test.f95

module TEST
contains

  subroutine 1
  code...

end module TEST

文件:main_program.f95
include "module_test.f95"
program MAIN_PROGRAM
use TEST
implicit none

code...

end program MAIN_PROGRAM

那么,是否有人可以在没有我的文件 module_test.f95 或主代码上的 include "module_test.f95" 行的情况下使用我的模块 TEST?

非常感谢!

最佳答案

你可以提供两件事。 1) 编译的目标代码,可能是库形式。缺点是这将取决于编译器、操作系统,也许是编译器版本,因此支持的负担可能很大。 2) 您可以编写例程的等效接口(interface)描述,而不是提供源代码以便其他人可以对模块进行 use。这至少是在源代码级别,不会依赖于编译器。如果您更改了任何过程的参数,则需要编写一些工作并且必须对其进行维护。

关于module - FORTRAN 95 : is it possible to share a module without sharing the source code?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18521442/

10-14 08:56