2

我们正在使用 swig 将 python 绑定添加到 c++ 库中。我已经创建了 .i 文件并将 swig 生成的输出编译到库中。

但是,当尝试从 Python 中使用我们的库时,会出现以下错误:

ImportError: /home/satpal/src/alpha/USBDrDaq/examples/libUSBDrDAQ.so: undefined symbol: libusb_clear_halt

如您所见,该库使用 LibUSB。.i 文件包含 libusb.h,这似乎还不够。

Python 是否也需要为 libUSB 绑定?

4

1 回答 1

3

您需要将 libUSB 链接到您正在生成的共享库中。也就是说,构建共享库的命令行应该是这样的:

gcc -shared example.o example_wrap.o -o _example.so -lusb

注意-lusb最后。

于 2012-05-28T08:10:09.347 回答