boost-python相关内容
我正在尝试按照以下说明安装PythonMagick. https://gist.github.com/tomekwojcik/2778301 到达$ make时出现此错误 Making all in pythonmagick_src CXX libpymagick_la-_DrawableFillRule.lo _DrawableFillRule.cpp:3:10: fata
..
我一直在一个项目中,我想删除boost依赖项并用Python C API替换它。 我花了一些时间了解Python C API,我看到了这个 捕获(error_already_set const&) 我阅读了boost文档它说明了它的使用位置。但是我想知道为什么需要它,以及如何使用本机Python C api实现相同的功能。 解决方案 Boost发生Python错误时,抛出 e
..
如何仅通过暴露抽象类而从抽象类(接口类)访问python中的派生类而不暴露派生类。我不想公开python的派生类。有什么方法可以通过抽象类访问派生类?示例代码为: Base.h class Base { public: virtual void Set(const std :: vector& AllParameters)= 0; };
..
我正在尝试使用Boost.Python将C ++类公开给Python.这是我要做的事情的简单版本: struct Base { virtual ~Base() {}; virtual char const *Hello() { printf("Base.Hello\n"); return "Hello. I'm Base."; }; }
..
是否可以(通过cPickle腌制)Boost.Python公开的枚举?我已经使用描述的第一种方法成功腌制了其他对象 ,但这似乎都不适用于枚举类型,默认情况下,这些对象似乎也不是可腌制的. 解决方案 与模块中不同.据了解,这是可能的,但是enum_语句的工作方式可以防止这种情况. 您可以在python方面解决此问题.在某个地方(可能在__init__.py文件中)执行以下操作:
..
我正在尝试根据官方网站上的说明构建Boost.Python. 我的操作系统是Windows 7 64位,编译器是MSVC11,boost是1.54. ==================================== 要安装基本的Boost,我从其网站下载了boost库,并将其解压缩到本地磁盘.路径为C:\local\boost_1_54_0. ===========
..
我遇到了一个问题,试图通过使用Numpy ndarray 向Python 2.7公开与OpenCV链接的动态C ++库函数,并使用OpenCV的 Mat 数据类型. 我想出了一个类似于 lightalchemist的解决方案解决方案,我也尝试使用boost :: python和boost :: numpy(也链接到Python 2.7)现在,我坚持使用前者.我已经到了可以在iPython中加
..
我有一个Python应用程序,该应用程序调用C ++ boost python库,并且一切正常.但是,我有一个C ++到Python的回调方案,其中来自Boost线程的C ++调用python,并且在C ++端出现访问冲突.如果我使用python线程进行完全相同的回调,则效果很好.因此,我怀疑我不能简单地使用boost线程从C ++回调Python,而是需要做一些额外的工作才能使它工作? 解
..
Python解释器具有全局解释器锁,据我了解,扩展必须在多线程环境中获取它.但是 Boost.Python HOWTO页面说,扩展功能必须释放GIL并在退出时重新获取. 我想抵制在这里进行猜测的诱惑,所以我想知道在以下情况下GIL锁定模式应该是什么: 从python(可能在python线程中运行)中调用扩展. 扩展程序的后台线程会回调Py_*函数. 最后一个问题是,为什么链接文
..
我有一个很小的Python脚本,在我眼中,它使threading.Thread.start()表现出异常,因为它不会立即返回. 在线程内,我想从基于boost::python的对象中调用方法,该方法不会立即返回. 为此,我将对象/方法包装如下: import threading import time import my_boostpython_lib my_cpp_objec
..
我正在使用boost::python创建C ++库的Python包装器.在某些时候,boost::python需要一个指向成员函数(或兼容的函数)的指针,例如: template void (*setter_function)(MyClass&, ValueType) // This doesn't compile,
..
当尝试公开这样的对齐类时: class __declspec(align(16)) foo { public: void foo_method() {} }; BOOST_PYTHON_MODULE(foo_module) { class_("foo") .def("foo_method", &foo::foo_method); } 您最终会遇
..
我正在开发一个使用Boost.Python嵌入Python解释器的应用程序.这用于运行用户生成的与主程序交互的“脚本". 不幸的是,一个用户尝试运行脚本时报告了运行时错误R6034.主程序启动正常,但我认为加载python27.dll时可能会出现问题. 我正在使用Visual Studio 2005,Python 2.7和Boost.Python 1.46.1.仅在一个用户的计算机上会
..
我很确定python脚本在这三个脚本中都可以使用,但是我想确保.我在这里和那里已经读到了有关可以编写CPython,Jython,IronPython的编辑器的信息,我希望我能对此有所作为. 我的情况是我要测试3种不同的api.每个api在功能上均执行相同的功能代码,但实现方式不同.我正在围绕每种语言的api编写包装器.每个包装器都应使用Boost :: python,Jython和Iron
..
我有一个带签名的函数: function(std :: vector vector); 我已经公开了它,但它没有接受Python列表。我已经查看了其他SO的答案,并且大多数都涉及更改函数以接受boost :: python :: lists,但我不想更改函数。我想我可以使用vector_indexing_suite为这个函数编写一个简单的包装器,但是我有
..
有一些问题,现在我读了以下内容: hello world python extension in c ++ using boost? 我试过在我的桌面上安装boost,并根据链接建议的帖子完成。我有以下代码: #include #include 使用命名空间boost :: python;
..
我有一个带有枚举的c ++类,我想用 boost :: python 来模仿,所以我可以写 MyClass python中的.value boost :: python :: class _ 没有一个枚举_ 方法,我正在寻找解决方法。 > 我第一次尝试使用lambdas,如 MyClass { enum {value1,value2}; }; class_&MyClass
..
我有一个用C ++编写的类,也使用了cuda_runtime.h中的一些定义,这是来自名为ADOL-C的opensource项目的一部分,你可以看看这里! 这在我使用CUDA-C时有效,但是我想以某种方式在PyCUDA中导入这个类,如果有可能的话。所以,我将使用这个类在内核(不在'main')定义用于计算函数的导数的特定变量。有什么办法把这个类传递给PyCUDA的SourceModule?
..
这里是我简单的第一次尝试使用boost的python扩展。有人可以帮助我理解导致编译错误的原因吗? #include using namespace std; void say_hello(const char * name){ cout
..
我有一个C ++类,在它的构造函数中需要一个函数指针( float(* myfunction)(vector *)) 我已经暴露了一些函数指针到Python。 使用这个类的理想方式是这样: import mymodule mymodule.some_class(mymodule.some_function) 关于此类的Boost如下:
..