我试图使用带有ctypes的名为pvcam(Photometrics虚拟摄像头访问方法)的库。此专有库作为已编译的共享对象(.so文件)与软件用户手册一起分发,适用于C开发。 我想用ctypes包装这个库,所以我可以使用python而不是C. 我试过了
ctypes.CDLL('libpvcam.so.2.7.4.2',mode=ctypes.RTLD_GLOBAL)
然后python抱怨依赖。
OSError: /usr/lib/libpvcam.so.2.7.4.2: undefined symbol: raw1394_new_handle
(我确实安装了libraw1394)根据this,可能必须使用正确的标志正确地重新编译库。作为专有的预编译对象,这是不可能的。 如何将这个.so加载到python中的ctypes?
答案 0 :(得分:0)
请事先尝试加载所需的库:
ctypes.CDLL('libraw1394.so.X.Y', mode=ctypes.RTLD_GLOBAL)
ctypes.CDLL('libpvcam.so.2.7.4.2', mode=ctypes.RTLD_GLOBAL)