这是我的代码:
Program Module_in_module
Use Module_collection
Implicit none
! Something...
End Program Module_in_module
Module Module_collection
Use Number_01
Use Number_02
End Module Module_collection
Module Number_01
Implicit none
! Something......
End Module Number_01
Module Number_02
Use Module_collection
Implicit none
! Something......
End Module Number_02
我打算使用模块Module_collection
,就像一个使用项目中所有其余模块的模块一样。例如,如果我想在Module_collection
中的某个其他模块中使用,那么来自Use Module_collection
项目的所有模块都会收到以下消息:
Fatal Error: Can't open module file 'module_collection.mod' for reading at (1): No such file or directory
是否有Only: Some_varable
的等效项可用于使用Module_collection
排除模块(在项目中使用所有其他模块,但在这种情况下只排除Module Number_02
?
答案 0 :(得分:0)
现在你告诉我们
我也收到了这样的信息:好像你有一个循环依赖 Fortran文件。检查您的USE或INCLUDE声明。
你的错误很明显。模块module_collection
使用模块number_02
,模块number_02
使用模块module_collection
。由于Fortran要求在引用模块之前(在use
语句中)编译模块,并且因为存在这种循环依赖性,所以编译器无法继续。
解决循环依赖关系。它的一个集合引用了收集器,这看起来有点奇怪。
我希望这与我还没有找到的另一个问题重复。