本文介绍了ImportError:Dll加载失败:找不到指定的模块。(美国宇航局Fortran CEA的Python Rocketcea包装器)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我尝试对NASA的CEA代码使用rocketcea(通过pip安装而不是克隆git)包装,但在尝试运行他们的示例代码时收到标题中的以下错误:

#example code
from rocketcea.cea_obj import CEA_Obj
C = CEA_Obj( oxName='LOX', fuelName='LH2')
for mr in range(2,9):
    print(mr, C.get_Isp(Pc=100.0, MR=mr, eps=40.0) )

产生的错误(从PyCharm IDE启动的Python3.7):

Traceback (most recent call last):
  File "C:/Users/George/Documents/SpaceportTXV/cea test/cea import.py", line 1, in <module>
    from rocketcea.cea_obj import CEA_Obj
  File "C:UsersGeorgeAppDataLocalProgramsPythonPython37-32libsite-packages
ocketceacea_obj.py", line 51, in <module>
    import rocketcea.py_cea as py_cea
ImportError: DLL load failed: The specified module could not be found.

我使用的是MinGW GCC编译器套件,我已经将bin和lib作为rocketcearecommends添加到我的路径中来解决这个问题。

我的路径:

C:UsersGeorge>echo %PATH%
C:Program Files (x86)NVIDIA CorporationPhysXCommon;C:WINDOWSsystem32;C:WINDOWS;C:WINDOWSSystem32Wbem;C:WINDOWSSystem32WindowsPowerShellv1.0;C:Program FilesMicrosoft VS Codein;C:Program FilesMicrosoft SQL ServerClient SDKODBC110ToolsBinn;C:Program Files (x86)Microsoft SQL Server120ToolsBinn;C:Program FilesMicrosoft SQL Server120ToolsBinn;C:Program FilesMicrosoft SQL Server120DTSBinn;C:Program Files (x86)Windows Kits8.1Windows Performance Toolkit;C:UsersGeorgeAppDataLocalProgramsPythonPython37-32Scripts;C:UsersGeorgeAppDataLocalProgramsPythonPython37-32;C:UsersGeorgeAppDataLocalMicrosoftWindowsApps;C:UsersGeorgeAppDataLocalProgramsmingwmingw64in;C:UsersGeorgeAppDataLocalProgramsmingwmingw64lib;

如果有帮助,link到我的Rocketcea文件夹包含的内容。

如果任何人对我为什么会有这个错误有任何见解,我将非常感激。我还可以添加任何可能对我有帮助的其他信息

推荐答案

我不知道现在是否已经找到了替代解决方案,但在连续几个小时的努力之后,我找到了一种方法来消除错误消息。这是在运行Python3.6.8x64的Anaconda3安装的Windows 10上完成的,但核心思想是在C:ProgramDataAnaconda3Libsite-packagesocketcea中,用户可以导航到..ocketcea.libs,.dll文件驻留在..ocketcea.libs中。我将这个.libs文件夹的路径添加到我的PATH变量中,在再次调用测试代码时,它运行了。

我希望这会有帮助。

顺便提一下,我还将我的python安装文件夹中python3.dll文件的路径添加到PATH变量中,但我怀疑Rocketcea特定的.dll是真正的密钥。

这篇关于ImportError:Dll加载失败:找不到指定的模块。(美国宇航局Fortran CEA的Python Rocketcea包装器)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-10 16:49