我继承了一个使用boostmpi for python的大型python系统。 所以我从源代码构建了boost1.52,包括mpi和python组件。在
我已经从http://mathema.tician.de/software/boostmpi为python1.38.0.1构建了boostmpi。 我知道有更新的库(mpi4py),但我继承的软件使用boostmpi。在
当我试着用它的时候。。。在
$ python
Python 2.7.3 (default, Jan 4 2013, 14:54:17)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-50)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import boostmpi
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/projects/nrel/cid/lada.2013/pkgi/lib/python2.7/site-packages/boostmpi-1.38.0.1-py2.7-linux-x86_64.egg/boostmpi/__init__.py", line 7, in <module>
from boostmpi._internal import *
ImportError: /projects/nrel/cid/lada.2013/pkgi/lib/python2.7/site-packages/boostmpi-1.38.0.1-py2.7-linux-x86_64.egg/boostmpi/_internal.so: undefined symbol: _ZN5boost3mpi5timer14time_is_globalEv
>>> from boostmpi._internal import *
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/projects/nrel/cid/lada.2013/pkgi/lib/python2.7/site-packages/boostmpi-1.38.0.1-py2.7-linux-x86_64.egg/boostmpi/__init__.py", line 7, in <module>
from boostmpi._internal import *
ImportError: /projects/nrel/cid/lada.2013/pkgi/lib/python2.7/site-packages/boostmpi-1.38.0.1-py2.7-linux-x86_64.egg/boostmpi/_internal.so: undefined symbol: _ZN5boost3mpi5timer14time_is_globalEv
我该怎么解决这个问题?在
使用ldd测试:
^{pr2}$
这是你的问题
boostmpi-1.38.0型
libboost_python.1.52.0
你必须修正你的路径,它会得到两个不同版本的boost
你的libs构建不正确。你的乳房/_内部.so要么没有链接到某个boost mpi lib,要么需要与现有版本不同的版本。你可以用
检查正在加载的库(如果有的话)。在
相关问题 更多 >
编程相关推荐