问题
i want to install the drivers for u are u 4500, but it only can be compiled with old kernel versions (2.6 to 3.2) , can you help me to install the drivers on ubuntu with last kernel version.
The sample application of fingerprint cant recognize the device.
回答1:
I am not sure what problems you are having, but I could compile and install the driver under Ubuntu 18.04. I did get a few errors during compilation, which I fixed as follows:
Error 1:
/opt/DigitalPersona/urusdk-linux/Linux/drivers/source/usbdpfp/usbdpfp.h:186:5: error: unknown type name ‘wait_queue_t’ /opt/DigitalPersona/urusdk-linux/Linux/drivers/source/usbdpfp/usbdpfp.c:606:9: error: implicit declaration of function ‘copy_from_user’; did you mean ‘raw_copy_from_user’? [-Werror=implicit-function-declaration] --- and a bunch of related compilation errors---
Solution: In /opt/DigitalPersona/urusdk-linux/Linux/drivers/source/usbdpfp/usbdpfp.h, replace
wait_queue_t wait;
with
wait_queue_entry_t wait;
Error 2:
opt/DigitalPersona/urusdk-linux/Linux/drivers/source/usbdpfp/usbdpfp.c:2186:22: error: implicit declaration of function ‘signal_pending’; did you mean ‘timer_pending’? [-Werror=implicit-function-declaration]
Solution:
a) In /opt/DigitalPersona/urusdk-linux/Linux/drivers/source/usbdpfp/usbdpfp.h, replace:
#include <linux/sched.h>
with
#include <linux/sched/signal.h>
b) In /opt/DigitalPersona/urusdk-linux/Linux/drivers/source/usbdpfp/usbdpfp.c, replace:
#include <asm/uaccess.h>
with
#include <linux/uaccess.h>
Now compile and install the module:
$ /opt/DigitalPersona/urusdk-linux/redist/usbdpfp start
$ lsmod |grep dpfp
mod_usbdpfp 45056 0
usbcore 286720 7 mod_usbdpfp,usbhid,usb_storage,ehci_hcd,btusb,uas,ehci_pci
Good luck.
来源:https://stackoverflow.com/questions/51995086/fingerprint-u-a-u-4500-with-ubuntu-18-04