After installing pyusb under Ubuntu Jaunty (AMD64) kernel the command:

    dev = usb.core.find()

raised the following exception:

  File "/usr/local/lib/python2.6/dist-packages/usb/core.py", line 784,
in find
    raise ValueError('No backend is available in the system')
ValueError: No backend is available in the system

I traced the problem back to usb/backend/libusb01.py

   libname = ctypes.util.find_library('usb')

After some wrestling with the regular expression in find_library, I
noticed that in my system the file is called libusb-0.1 which does not
match this nice looking pattern:

expr = r'(\S+)\s+\((%s(?:, OS
ABI:[^\)]*)?)\)[^/]*(/[^\(\)\s]*lib%s\.[^\(\)\s]*)' \
                   % (abi_type, re.escape(name))

After changing the source to

   libname = ctypes.util.find_library('usb-0.1')

all works well.

I guess the take-away from this is that this old library has a new name,
at least on newer Ubuntu systems.


Michael


------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Pyusb-users mailing list
Pyusb-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pyusb-users

Reply via email to