将 Fortran 对象导入 Python

import fortran object into Python

我正在尝试编译我在网上找到的一些项目。 该项目正在将一些 Fortran 代码包装到 python 对象中。

该项目的作者写道我需要 运行 setup.py 文件。

我做到了。它包含以下代码:

  ext = Extension(name = "GaussianFitter._Fitter",
                sources = ["GaussianFitter/src/lmdif.f",
                           "GaussianFitter/src/splev.f",
                           "GaussianFitter/src/gaussian.f90"],

显然所有这些 "f" 文件都存在。 当我安装那个 setup.py 文件时,它接缝成功地完成了一些工作,但是脚本中的第一行使用了那个 _Fitter:

import _Fitter

无效。

我是python的新手,完全没有用过Fortran,所以请原谅我的无知。

编辑:此处提供的项目:

https://github.com/ardiloot/GaussianFitter

谢谢!

终于成功了,这是我的初学者教程:

注意 - 因为它是为初学者准备的 - 它在全局范围内设置。

  1. 从以下位置安装 mingw32: http://www.mingw.org/ 将它的 bin 路径添加到系统 PATH。
  2. 添加包含以下文本的 setup.cfg 文件:

    [建造]

    编译器=mingw32

在 %pythondir%\Lib\distutils

中找到它
  1. 因为 setup.py 文件包含指向 .c 或 .f 文件 (c++/fortran/c) 的链接,以便生成命令 (python setup.py安装)能够找到这些文件 - 运行 设置工作目录(即 cd c:....\)时的命令。

  2. 导入该模块时忽略代码中的红色错误行。它在 LIB 目录中,只需尝试 运行...

编辑:

如果仍然无法导入已构建的 f 文件 - 按以下方式构建它可能会有所帮助:

python setup.py build_ext --inplace

它生成一个对象 (*.pyd),这在它出于任何原因停止工作后帮助了我。