mam problem wyłączania czysto mojej aplikacji systemu Linux, który wykorzystuje libusb
(jądro nie odzyskać interfejs):`nie libusb_attach_kernel_driver` pracy
int rc;
rc = libusb_reset_device(handle_);
if (rc < 0) {
cerr << "Error resetting the device: " << libusb_error_name(rc);
}
for (int ifnum = 0; ifnum < 2; ifnum++) {
rc = libusb_release_interface(handle_, ifnum);
if (rc < 0) {
cerr << "Error releasing interface: " << libusb_error_name(rc);
}
if (libusb_kernel_driver_active(handle_, ifnum)) {
cerr << "Reattaching CDC ACM kernel driver.";
rc = libusb_attach_kernel_driver(handle_, ifnum);
if (rc < 0) {
cerr << "Error reattaching CDC ACM kernel driver: " << libusb_error_name(rc);
}
}
}
libusb_close(handle_);
libusb_exit(NULL);
Problem polega na tym, że doczepić sterownik jądra nie działa . Właściwie libusb_kernel_driver_active
nie zwraca 1, ale nawet jeśli skomentuję to i zawsze zadzwonię pod numer libusb_attach_kernel_driver
, nigdy nie otrzymam mojego urządzenia /dev/ttyACM0
. W takim przypadku otrzymam LIBUSB_ERROR_NOT_FOUND
.
użyj libusb_set_debug(), aby uzyskać szczegółowość. –