从PosipyPython中暴露C++到Python错误

2024-03-29 08:19:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我通过PosipyPython库将一个简单的C++代码暴露给Python:

#include <boost/python/detail/wrap_python.hpp>
#include <boost/python.hpp>

using namespace boost::python;

bool test_api( void ){
   return true;
};

BOOST_PYTHON_MODULE(materials) {

   def( "test_api", test_api );

}

尝试导入此模块后,python解释器返回错误:

^{pr2}$

我已经将模块静态链接到boostpython库,python动态库libpython3.2m.so和libpython3.2m.so.1.0都在工作目录中。在

关于在哪里找到丢失的符号有什么建议吗?在


Tags: 模块代码testapireturnincludenamespacebool
1条回答
网友
1楼 · 发布于 2024-03-29 08:19:15

Boost库与Python安装不一致。在

cd boost_source
./bootstrap.sh  with-libraries=python  prefix=../boost_target

要配置Boost以指向正确的Python安装:

^{pr2}$

编辑指向Python的线:

using python : version_number
             : path_to_python_executable 
             : path_to_python_include_directory 
             : path_to_python_library_directory

然后,运行构建系统:

./b2

相关问题 更多 >