为什么我的Jupyter对于在f2py中编译的fortran代码给我一个ModuleNotFound错误?

问题描述

我的Jupyter笔记本给我一个f2py中编译的fortran代码的ModuleNotFound错误。 f2py在make.sh文件中,该文件是我在安装软件包时运行的。一些信息

  1. 其中f2py $'user / anaconda3 / envs / petitRT / bin / f2py'
  2. 哪个python $'user / anaconda3 / envs / petitRT / bin / python'
  3. python --version $ Python 3.7.9
  4. make.sh文件具有$ f2py -c --opt ='-O3 -funroll-loops -ftree-vectorize -ftree-loop-optimize -msse -msse2 -m3dNow'-m fort_rebin fort_rebin.f90
  5. 创建的.so文件名为$'fort_rebin.cpython-37m-x86_64-linux-gnu.so'
  6. 最后,哪个jupyter $'user / anaconda3 / envs / petitRT / bin / jupyter'

有人可以帮我解决这个难题吗?

一些修改: make.sh文件和fort_rebin.f90位于最高目录中。

我需要导入的fortran代码在inner / directory / rebin_give_width.f90中。但是,软件包安装没有说明有关编译rebin_give_width.f90的内容(在make.sh中也未提及)。我现在看到它没有生成任何.so文件

问题是,这个lib曾经工作过。由于某些其他原因,我重新安装了该软件包,并且发生了某些事情。

调用库和错误-

$将rebin_give_width导入为rgw

ModuleNotFoundError Traceback(最近一次通话) 在 ----> 1将rebin_give_width导入为rgw

ModuleNotFoundError:没有名为“ rebin_give_width”的模块

好的,我找到了一种解决方法。我不确定为什么以前可以使用,也不确定为什么它不是安装的一部分。但是,我在make.sh中包含了命令$ f2py -c inner / directory / rebin_give_width.f90 -m rebin_give_width,语句$ import upmost_directory.rebin_give_width现在可以正常工作了!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)