如何通过 python 脚本运行 .so 文件

新手上路,请多包涵

我有交流程序(.c 文件)。我正在将其转换为共享对象 (.so)。我如何从我的 python 代码调用和运行共享对象?如果可能的话,请给我推荐一个可以帮助我完成这项任务的库列表。

原文由 user3415910 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 594
2 个回答

如果你想在共享对象中调用函数,标准模块 ctypes 就是你所追求的。不需要任何外部库。

加载库:

 from ctypes import *
# either
libc = cdll.LoadLibrary("libc.so.6")
# or
libc = CDLL("libc.so.6")

然后从库中调用一个函数,就像调用 Python 函数一样:

 print(libc.time(None))

原文由 Alan 发布,翻译遵循 CC BY-SA 3.0 许可协议

使用推荐方法的人要小心。它在 windows 上不起作用,适用于 linux,windows 函数的代码如下:

 from ctypes import *
libc = cdll.msvcrt

并称它为

print(libc.time(None))

原文由 Aingkaran Suppiah 发布,翻译遵循 CC BY-SA 4.0 许可协议

推荐问题