Я пытаюсь скомпилировать программу, которая использует библиотеку libusb
в Ubuntu 12.04.
Я установил libusb-1.0-0-dev
. Тем не менее, когда я пытаюсь скомпилировать программу, как показано ниже:
#include<usb.h>
#include<stdio.h>
#include<libusb-1.0/libusb.h>
int main()
{
libusb_init(NULL);
return 0;
}
Это дает мне ошибку, говоря
/tmp/ccb75YtE.o: In function 'main':
usb.c:(.text+0x11): undefined reference to 'libusb_init'
collect2: ld returned 1 exit status
Я использую команду cc <file name> -lusb
для ее компиляции. В чем может быть проблема?
Попробуйте изменить -lusb на -lusb-1.0 , например:
$ cc <file name> -lusb-1.0
Вы должны передать команду -lusb
компоновщику. Вы включаете заголовок, но вы также должны связать код с библиотекой libusb (которая также должна быть установлена)