我试图在Windows 7 64位使用Mpi4py 1.3 Python 2.7版。 我从网上下载安装版本在这里 ,其中包括的openmpi 1.6.3所以在安装目录(* / Python27 \ LIB \站点包\ mpi4py \ LIB)以下的库中:libmpi.lib,libmpi_cxx.lib,libopen-pal.lib和libopen-rte.lib。 现在,在我的代码时,试图导入:
from mpi4py import MPI
它返回以下错误:导入错误:DLL加载失败:指定的模块找不到。 我试图复制一个波夫LIB文件旁边的* / Python27 \ LIB \站点包\ mpi4py \ MPI.pyd甚至到Windows / System32下,但没有奏效。 我很欣赏你什么DLL文件丢失,以及如何修复错误的帮助?
谢谢,
@ Aso.agile
使用sys.prefix\lib\site-packages\mpi4py\bin\python-mpi.exe
或添加以下代码sys.prefix\lib\site-packages\mpi4py\__init__.py
围绕线37:
def _init_openmpi():
"""Pre-load libmpi.dll and register OpenMPI distribution."""
import os
import ctypes
if os.name != 'nt' or 'OPENMPI_HOME' in os.environ:
return
try:
openmpi_home = os.path.abspath(os.path.dirname(__file__))
openmpi_bin = os.path.join(openmpi_home, 'bin')
os.environ['OPENMPI_HOME'] = openmpi_home
os.environ['PATH'] = ';'.join((openmpi_bin, os.environ['PATH']))
ctypes.cdll.LoadLibrary(os.path.join(openmpi_bin, 'libmpi.dll'))
except Exception:
pass
_init_openmpi()
在Windows 10使用Mpi4py 1.3与Python 3.5,我可以运行import mpi4py
成功,但没有from mpi4py import MPI
。 为了解决这个问题,只是通过重新安装MPI MPI 。 这对我的作品。