python-cffi

    1热度

    1回答

    我想在Python 3中使用开罗后端的Pango。我选择'cairocffi'是因为这里不相关的原因。我正在尝试运行the example in the documentation。它通过CFFI称呼Pango。示例的最开始部分 import cairocffi import cffi ffi = cffi.FFI() ffi.include(cairocffi.ffi) 给出以下错误。

    0热度

    1回答

    我想使用Python cffi库实例化一个结构。我想从我自己的.h文件中实例化一个结构以及来自标准库的结构。 import datetime import os from cffi import FFI clib = None script_path = os.path.dirname(os.path.realpath(__file__)) ffi = FFI() with op

    0热度

    1回答

    我有一个函数的地址,也有它的“c样”表示(来自llvmlite,但这不是那么重要)。 对于一个功能,它增加了两个双值并返回它们的代码是这样的:cfunc = CFUNCTYPE(c_double, c_double, c_double)(func_ptr) 这会工作得非常好,但是我的函数的参数可以在类型和数量的不同而不同。在python中,这可以通过一些for arg in args生成器来解决。

    1热度

    1回答

    传递指针到C函数在Python我想有作为 int f(double* x); 这样的签名的第三方库创建一个Python包装C函数其中函数f修改输入参数x(即,使用指针通过引用调用)。什么是实现Python包装函数的最有效方法,以便Python用户可以将它视为一种每次只返回一个新数字的函数?实施例的伪代码: # lib and ffi are imported from a compiled c

    1热度

    1回答

    使用CFFI library for Python,我试图将一个Python字符串转换成char *,以便我可以传递它到一个接受char *的C函数。我似乎无法弄清楚正确的咒语是什么。 考虑这个例子: >>> from cffi import FFI >>> ffi = FFI() >>> ffi.new("char[]", "bob") 结果是: TypeError: initializ

    0热度

    1回答

    不知道是这是问这个正确的地方: 我一直在努力,试图创建配方编译的python-CFFI为多拉分支bitbake,并没有运气。似乎有几个食谱,但没有为我工作。显然源代码gz文件处于奇怪的状态,不能通过bitbake中的普通do_fetch命令获取。 当使用这些bitbake的食谱为出发点: python-cffi_1.11.0.bb 和 python-cffi_1.11.0.inc 我修改代码来创建

    1热度

    3回答

    我需要将System.IntPtr传递给.NET函数(Python with pythonnet)。这个指针应该指向在cffi中创建的结构体。 我发现this: from CLR.System import IntPtr, Int32 i = Int32(32) p = IntPtr.op_Explicit(i) 这是我试过到目前为止 import clr from cffi impor

    0热度

    1回答

    我想在C中使用PyPy和cffi嵌入Python函数。我正在关注PyPy文档中的this guide。 问题是,我找到的所有例子都是在int上进行操作的,我的函数接受一个字符串并返回一个字符串。我似乎无法弄清楚如何在C中嵌入这个函数,因为C似乎并没有真正的字符串,而是使用了字符数组。 这是我已经试过: # interface.py import cffi ffi = cffi.FFI()

    0热度

    1回答

    我有一个Python供电的DSL,我通过exec()执行。此DSL包含通过CFFI的本地函数调用。 调用一个只有2 C调用深度的本机函数时,堆栈溢出(所以你使它不可执行!)崩溃,在每个C函数中只有少数uint16_t被分配到栈中。 Python应用程序是一个tkinter GUI,它通过定时器(master.after(1000, self.tick))事件调用DSL,这可能会占用堆栈本身的很大一

    0热度

    1回答

    我正在使用python CFFI来构建一个名为libfpta的外部库,我想将它放在我的python repo(myrepo/lib/libfpta.so)中,从而分发与python代码一起。第一件好事是包装器表示为共享对象(_amnesia.so)实际上是生成的,但为了甚至导入它,我必须正确设置LD_LIBRARY_PATH。 换句话说 (venv) [email protected]:~/wor