正在与boost::python作斗争

Struggling with boost::python

本文关键字:python 斗争 boost      更新时间:2023-10-16

我正在尝试运行helloworld-boost-python示例,乍一看一切似乎都很好。我得到以下输出

>bjam
...patience...
...patience...
...found 1727 targets...
...updating 9 targets...
gcc.compile.c++ bin/gcc-4.7/debug/hello.o
gcc.link.dll bin/gcc-4.7/debug/hello_ext.so
common.copy libboost_python.so.1.53.0
ln-UNIX libboost_python.so
ln-UNIX libboost_python.so.1
ln-UNIX libboost_python.so.1.53
common.copy hello_ext.so
capture-output bin/hello.test/gcc-4.7/debug/hello
**passed** bin/hello.test/gcc-4.7/debug/hello.test
...updated 9 targets...

然而,当我尝试在python中使用它时,我会收到一条导入错误消息

>python
Python 2.7.4 (default, Apr 19 2013, 18:32:33) 
[GCC 4.7.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import hello
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "hello.py", line 6, in <module>
  import hello_ext
ImportError: libboost_python.so.1.53.0: cannot open shared object file: No such file or directory

您需要配置您的环境来查找boost库。这与python没有太大关系,但与boost安装有关。最快的方法是扩展LD_LIBRARY_PATH环境变量。

看看这里:

加载boost 的共享库时出错