gpt4 book ai didi

python - bjam `Unable to find file or target named ' libboost_python'`

转载 作者:行者123 更新时间:2023-12-04 18:47:57 28 4
gpt4 key购买 nike

我的 Boost.Python 配置/安装中缺少什么?

我正在尝试编译教程示例,但出现 libboost_python 错误未找到

cd /usr/share/doc/libboost1.42-doc/examples/libs/python/example/tutorial
bjam
error: Unable to find file or target named
error: 'libboost_python'
error: referred from project at
error: '.'

但是图书馆在那里, ldconfig.real已运行:
/usr/lib/libboost_python.a -> libboost_python-py27.a
/usr/lib/libboost_python-mt-py26.a -> libboost_python-py26.a
/usr/lib/libboost_python-mt-py26.so -> libboost_python-py26.so.1.42.0
/usr/lib/libboost_python-mt-py27.a -> libboost_python-py27.a
/usr/lib/libboost_python-mt-py27.so -> libboost_python-py27.so.1.42.0
/usr/lib/libboost_python-py26.a
/usr/lib/libboost_python-py26.so -> libboost_python-py26.so.1.42.0
/usr/lib/libboost_python-py26.so.1.42.0
/usr/lib/libboost_python-py27.a
/usr/lib/libboost_python-py27.so -> libboost_python-py27.so.1.42.0
/usr/lib/libboost_python-py27.so.1.42.0
/usr/lib/libboost_python.so -> libboost_python-py27.so

我正在使用来自 Ubuntu 11.04 的默认 libboost 包。

我的 user-config.jam
using python : 2.7 ;

最佳答案

我在 ubuntu 12.04 上遇到了类似的问题,我将所有的 boost 库都安装为一个包。我在这里找到了解决方案:

http://jayrambhia.wordpress.com/2012/06/25/configuring-boostpython-and-hello-boost/

事实证明,您根本不需要使用 bjam。一个makefile就足够了。我将在此处重复上述链接中的解决方案:

1.) 安装 libboost-python 包

2.) 创建一个名为 'hello_ext.c' 的 hello world 源文件:

char const* greet()
{
return "hello, world";
}

#include<boost/python.hpp>
BOOST_PYTHON_MODULE(hello_ext)
{
using namespace boost::python;
def("greet",greet);
}

3.) 创建一个生成文件:
PYTHON_VERSION = 2.7
PYTHON_INCLUDE = /usr/include/python$(PYTHON_VERSION)
# location of the Boost Python include files and library
BOOST_INC = /usr/include
BOOST_LIB = /usr/lib
# compile mesh classes
TARGET = hello_ext
$(TARGET).so: $(TARGET).o
g++ -shared -Wl,--export-dynamic $(TARGET).o -L$(BOOST_LIB) -lboost_python -L/usr /lib/python$(PYTHON_VERSION)/config -lpython$(PYTHON_VERSION) -o $(TARGET).so
$(TARGET).o: $(TARGET).c
g++ -I$(PYTHON_INCLUDE) -I$(BOOST_INC) -fPIC -c $(TARGET).c

4.) 制作
make

5.) 准备使用。在 python 中:
import hello_ext
print hello_ext.greet()

关于python - bjam `Unable to find file or target named ' libboost_python'`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6098075/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com