Date: Mon, 30 Aug 2010 19:22:49 -0500 From: Jim Bryant <kc5vdj.freebsd@gmail.com> To: Alexander Leidinger <Alexander@Leidinger.net> Cc: usb@FreeBSD.org Subject: Re: Porting an USB software from linux (libusb) Message-ID: <4C7C4B59.3090207@gmail.com> In-Reply-To: <20100830174232.56765zlyg2rhuhgc@webmail.leidinger.net> References: <20100830174232.56765zlyg2rhuhgc@webmail.leidinger.net>
next in thread | previous in thread | raw e-mail | index | archive | help
easy fix. just drop the _np the functions are there under legacy naming. Alexander Leidinger wrote: > Hi, > > I try to port a linux userland USB program and I get the following > error message when trying to link to libusb (current as of r210105): > ---snip--- > cc -lusb -lm -o fowsr fowsr.o > fowsr.o(.text+0x1546): In function `CUSB_Open': > : undefined reference to `usb_get_driver_np' > fowsr.o(.text+0x1710): In function `CUSB_Open': > : undefined reference to `usb_detach_kernel_driver_np' > gmake: *** [fowsr] Fehler 1 > ---snip--- > > Do I need those functions on FreeBSD (the device may show up as a HID > device, I hadn't a chance to attach it to a FreeBSD box yet), or can I > just remove them (I could make sure the HID driver is not loaded in > the kernel)? > > Here is the related source: > ---snip--- > devh = usb_open(dev); > assert(devh); > > signal(SIGTERM, release_usb_device); > > ret = usb_get_driver_np(devh, 0, buf, sizeof(buf)); > printf("usb_get_driver_np returned %d\n", ret); > if (ret == 0) { > printf("interface 0 already claimed by driver > \\'%s\\', attempting to detach it\n", buf); > ret = usb_detach_kernel_driver_np(devh, 0); > printf("usb_detach_kernel_driver_np returned %d\n", ret); > } > ret = usb_claim_interface(devh, 0); > if (ret != 0) { > printf("claim failed with error %d\n", ret); > exit(1); > } > > ret = usb_set_altinterface(devh, 0); > ---snip--- > > Bye, > Alexander. >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4C7C4B59.3090207>