【问题标题】:Problems compiling with changes to f2py对 f2py 的更改进行编译时出现问题
【发布时间】:2012-09-27 07:40:14
【问题描述】:

我正在尝试更新我的包 scikits.bvp_solver(来源 here),我遇到了一些 f2py 生成文件的问题。 2009 年生成的文件“bvp_solverf-f2pywrappers2.f90”和“bvp_solverfmodule.c”允许使用“python setup.py build_ext --inplace”就地构建包,但如果我删除它们并尝试重建我得到错误

scikits/bvp_solver/lib/bvp_solverf-f2pywrappers2.f90:218.48:

                use guess_3_wrap__user__routines
                                                1
Fatal Error: Can't open module file 'guess_3_wrap__user__routines.mod' for reading at (1): No such file or directory
scikits/bvp_solver/lib/bvp_solverf-f2pywrappers2.f90:11.19:

添加这个use语句的部分没有出现在旧版本的文件中。我很难弄清楚如何解决这个问题。任何人都可以提供建议吗?过去两年 f2py 的主要变化是什么?

【问题讨论】:

  • 包含“module guess_3_wrap__user__routines”的文件是否存在?如果存在,是否在失败文件之前编译?
  • 我认为该文件应该由 f2py 自动生成,因为它是 bvp_interface.pyf 文件中的模块名称之一。到目前为止,我在生成的任何一个文件中都没有看到它。

标签: numpy fortran f2py


【解决方案1】:

我终于通过消除guess_3_wrap__user__routines并将相关代码移动到python中来解决了这个问题。

【讨论】:

    【解决方案2】:

    如果您没有“guess_3_wrap_user_routines.mod”文件,您应该在构建使用它的文件之前重新编译它。对于我遇到的相同问题,在我的命令窗口中,它设置为“英特尔 Composer XE 2011 Intel(R) Visual Studio 2010”,我输入了“gfortran”,这是我的 Fortran 编译器和 Fortran 文件,所以在你的case 'useguess_3_wrap_user_routines.f'(或扩展名类似于 '.f90')并运行它。这应该再次重新编译“useguess_3_wrap_user_routines.f”以获取“.mod”文件。

    【讨论】:

      猜你喜欢
      • 2021-11-29
      • 2020-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多