Tente alterar o -lusb para -lusb-1.0 , desta forma:
$ cc <file name> -lusb-1.0
Eu estou tentando compilar um programa que usa a biblioteca libusb
no Ubuntu 12.04.
Eu instalei o libusb-1.0-0-dev
. No entanto, quando tento compilar um programa como abaixo:
#include<usb.h>
#include<stdio.h>
#include<libusb-1.0/libusb.h>
int main()
{
libusb_init(NULL);
return 0;
}
Isso me dá um erro dizendo
/tmp/ccb75YtE.o: In function 'main':
usb.c:(.text+0x11): undefined reference to 'libusb_init'
collect2: ld returned 1 exit status
Estou usando o comando cc <file name> -lusb
para compilá-lo.
Qual poderia ser o problema?
Tente alterar o -lusb para -lusb-1.0 , desta forma:
$ cc <file name> -lusb-1.0
Você precisa passar o comando -lusb
para o vinculador. Você está incluindo o cabeçalho, mas você também deve vincular o código à biblioteca libusb (que também deve ser instalada)