使用Boost.Python将C ++库导入Python3时出现分段错误

时间:2019-07-01 20:30:45

标签: python c++ boost-python

我尝试不使用bjam在Boost.Python文档上做一个Hello World示例。我正在手动编译目标文件和.so文件。源代码如下:

hello.cpp:

#include <boost/python.hpp>
char const* greet() { return "Hello, world!"; }
BOOST_PYTHON_MODULE(hello_ext) {
    using namespace boost::python;
    def("greet", greet);
}

要创建目标文件:

g++ -I/usr/local/include -I/usr/include/python3.6m -fPIC -c -o hello.o hello.cpp

然后创建模块文件:

g++ -shared -Wl,-soname,"libhello.so" -L/usr/local/lib hello.o -lboost_python -fPIC -o libhello.so

尝试导入Python3:

>>> import libhello
[1]    2481 segmentation fault (core dumped) python3

我从this问题中得到了代码和命令。我想念什么吗?

0 个答案:

没有答案