为* .so构建python接口

时间:2016-09-23 11:15:07

标签: python shared-libraries cython ctypes

我想使用C库,共享对象和头文件可用于该库。

由于ctypesCython的文档非常缺乏,有关这些文档的教程用于不同的用法,我需要一些帮助。

所以,我不知道从哪里开始,哪个工具对像我这样的Python初学者来说是最简单的解决方案。

1 个答案:

答案 0 :(得分:0)

我终于设法用ctypes导入了库。 Cython没有为我工作,似乎与所需的不同文件很复杂。

收到类似undefined symbol: inflate之类的错误后,从系统库中导入所需的pcap lib后,访问确实很有用。我只是不知道这是必要的。我找到了它的位置:find /usr/lib/ -name libpcap*

from ctypes import cdll

def main():
    libpcap = cdll.LoadLibrary('path/to/libpcap.so')
    lib = cdll.LoadLibrary('path/to/lib.so')
    lib.function_from_lib

if __name__ == "__main__":
    main()

所以我希望,如果有人有这个问题来自谷歌,这里有一个可能有帮助的解决方案。