У меня есть очень простой, голый минимум libusb например Going, который компилирует, но вывод производится по следующей программе:libusb: 11
#include <stdio.h>
#include <stdlib.h>
#include <libusb-1.0/libusb.h>
int main(void) {
puts("Looking for USB devices...");
libusb_device **devices;
libusb_context *context = NULL;
ssize_t device_count = 0;
device_count = libusb_get_device_list(context, &devices);
if(device_count < 0) {
puts("Unable to retrieve USB device list!");
}
printf("%lu devices found\n", device_count);
return EXIT_SUCCESS;
}
выглядит следующим образом:
Looking for USB devices...
Segmentation fault: 11
неудача происходит по линии 13:
device_count = libusb_get_device_list(context, &devices);
I 'm работает над этим в Mac OS X 10.9 и имеет libusb версии 1.0.9, установленную через Homebrew.
Любая идея в чем проблема?
Вы должны инициализировать этот контекст. – Mat
Может быть, «контекст» должен указывать на некоторую память вместо «NULL». Проверьте код/документацию функции 'libusb_get_device_list' –
Следуя примеру http://www.dreamincode.net/forums/topic/148707-introduction-to-using-libusb-10/ show, что = NULL является адекватной инициализацией для контекста , –