I'm trying to use pyuvc module which depends on libuvc which depends on libusb. However, when I try to import uvc in python, I get

ImportError: /usr/local/lib/libuvc.so.0: undefined symbol: libusb_handle_events_completed

As I googled around, I saw many people encountered this problem but nothing worked. Usually it was an issue of having wrong version of libusb installed, and I guess something similar is happening here too. I wanted to just remove all libusb related packages and reinstall them, but I got a scary warning that it could destroy my system.

I'm using Debian 8 (Jessie)

I have no idea how to continue, please help

  • 1
    It's clearly version dependency problem. libuvc uses libusb but libusb doesn't have function or variable with name libusb_handle_events_completed. You should update libusb. – Yurij Goncharuk Apr 3 '18 at 20:39
  • @YurijGoncharuk I tried running apt install libusb-1.0-0-dev but I probably have an old version somewhere that's still there. How can I locate that version? And remove it without breaking the system? – Dunno Apr 4 '18 at 9:54

Just in case anyone else has this issue: apparently, pyuvc requires their own fork of libuvc found at https://github.com/pupil-labs/libuvc, not the official version that's linked in their readme. To make sure I have their version installed, I did a sudo rm /usr/local/lib/libuvc* and then proceeded with instructions listed in the link above.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.