我想用mpi4py使用python。然而,當我在Python環境中運行from mpi4py import MPI
,我得到以下錯誤:mpi4py:庫未加載:/usr/local/lib/libmpi.1.dylib
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: dlopen(/usr/local/lib/python2.7/site-packages/mpi4py/MPI.so, 2): Library not loaded: /usr/local/lib/libmpi.1.dylib
Referenced from: /usr/local/lib/python2.7/site-packages/mpi4py/MPI.so
Reason: image not found
在指定的路徑(/usr/local/lib/
)我有什麼,我認爲是叫libmpi.12.dylib
所需文件的版本。我已經看了source code for mpi4py,並從我能告訴這個文件是有效的,但由於某種原因mpi4py(MPI.so具體)仍然試圖使用.1。版。
無論我使用mpirun
,mpiexec
運行,還是僅在終端python會話中輸入import命令(最後一個是我如何生成此處複製的錯誤消息),都會顯示錯誤消息。
我將不勝感激任何幫助。我曾嘗試重新安裝和/或更新所有相關的軟件包和代碼,但尚未解決問題。
---更新--- 無奈之下,我嘗試將libmpi.12.dylib
重命名爲libmpi.1.dylib
,至少現在它已經起作用了。如果任何人有一個解決方案,我仍然對非黑客解決方案感興趣。
當你運行你的程序時,你在使用MPI嗎?也就是說,你是使用命令'mpiexec -n#python myprogram.py ...',還是隻使用'python myprogram.py ...'?要清楚,前者在使用MPI時是正確的。 – Kevin
@凱文,我已經更新了我的問題以迴應您的評論。 – jthomas