我使用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中的模块作为动态库。任何建议都将不胜感激!
答案 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)