使用ctypes导入时如何获取C库的版本?

2 投票
1 回答
555 浏览
提问于 2025-04-17 21:41

我有一个用C语言写的库,这个库有不同的版本。我想为我的Python程序创建一个符号链接,指向我想要的特定版本的库。请问有没有办法查看加载到Python中的库的版本?

这是我加载C库的方式:

import os
import ctypes as C

path = os.path.dirname(os.path.abspath(__file__))
_foolib = C.cdll.LoadLibrary(path + "/foolib/libfoo.so")

这里的 libfoo.so 是指向某个 libfoo.so.x.y.z 的符号链接。我不想改代码去指向新的库,只想更改这个符号链接。

谢谢!

相关问题:

1 个回答

0

你可以解决符号链接的问题(可以查看一下readlink这个命令),或者如果这个库提供了一个版本的变量或函数,可以在它加载后使用那个。

撰写回答