使用多个Fortran文件处理F2PY编译器的理想方法

时间:2018-06-19 04:15:08

标签: f2py

我使用F2PY编译我的Fortran代码,但是如何理清文件之间的依赖关系会让我感到有些困惑。

例如,有文件A.f90和B.f90,B.f90使用A.f90中的模块。如何编译这些以获得动态库?我的方法是

with open('A.f90') as fh:
    source = fh.read()
with open('B.f90') as fh:
    source += fh.read()
f2py.compile(source, ...)

但我认为这不是一个好习惯。我相信会有更好的方法。我想独立编译它们,但在编译B时使用A中的模块作为动态库。任何建议都将不胜感激!

1 个答案:

答案 0 :(得分:0)

您可以通过extra_args模块内的f2py.compile选项发送具有依赖性的fortran文件。

您的代码将类似于

with open('B.f90') as fh:
    source = fh.read()
f2py.compile(source,....,extra_args=path_to_A.f90)