我希望能够在不共享其源代码的情况下共享 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/