57得票7回答
Ubuntu - 连接 boost.python - 致命错误: 找不到 pyconfig

遇到了一些问题,现在我已经阅读了以下内容: 使用boost,在C++中创建Python扩展的hello world程序? 我尝试将boost安装到我的桌面上,并按照帖子中的建议进行链接。我有以下代码: #include <boost/python.hpp> #include ...

55得票5回答
如何获取Python异常文本

我想在我的C++应用程序中嵌入Python。 我正在使用Boost库 - 一个很好的工具。 但我有一个问题。 如果Python函数引发异常,我想捕获它并在我的应用程序中打印错误或获取一些详细信息,例如导致错误的Python脚本中的行号。 我该怎么做? 我找不到任何在Python API或B...

48得票2回答
如何从.so文件中导入Python模块?

[me@hostname python]$ cat hello_world.cc #include <string> #include <Python.h> #include <boost/python.hpp> namespace { std::st...

46得票6回答
从std::vector到boost::python::list

我在c++中有一个方法,被python调用并需要返回一个python列表对象。 我已经创建了这个方法,它附加在一个暴露的类上,并可以从python中调用...(它返回void)。 所以问题是,如何从这里创建一个python列表: std::vector<std::string&gt...

43得票13回答
嵌入式Python应用程序中的运行时错误R6034

我正在开发一个应用程序,使用Boost.Python嵌入Python解释器。这个程序用于运行用户生成的“脚本”,与主程序交互。 不幸的是,有一位用户在尝试运行脚本时报告运行时错误R6034。主程序启动很好,但我认为问题可能出现在加载python27.dll文件时。 我使用的是Visual ...

38得票6回答
如何在Python中实现一个C++类,以便被C++调用?

我有一个用C++编写的类接口。 我有一些实现此接口的类也是用C++编写的。 这些在较大的C++程序的上下文中调用,该程序基本上实现了“main”。 我想能够在Python中编写此接口的实现,并允许它们在较大的C++程序的上下文中使用,就像它们只是用C++编写的一样。 有很多关于Python和...

36得票2回答
动态加载库的CMake输出名称是什么?

我正在尝试编写cmake规则,在Linux上使用boost.python构建Python动态加载库。 我想将“foo”用作Python模块名称,因此库必须称为foo.so。 但是,默认情况下,cmake使用标准的库命名规则,因此如果我编写以下内容:add_library(foo foo.cpp...

33得票4回答
boost::python:Python列表转换为std::vector

最终我能够使用std :: vector在Python中使用[]操作符。窍门是在处理内部向量的boost C ++包装器中提供一个容器即可:#include <boost/python.hpp> #include <vector> class world { s...

31得票2回答
使用boost::python将回调从Python传递到C++

我希望能够将回调从我的Python代码传递给C++。 我希望我的代码看起来像这样: 在C++中: typedef void (*MyCallback_t) (CallbackInfo); class MyClass {... void setcallback(MyCallback_...

30得票8回答
提升和 Python 3.x

boost.python如何处理Python 3? 它只支持Python 2吗?