web-dev-qa-db-fra.com

programme libusb non compilé

J'essaie de compiler un programme qui utilise la bibliothèque libusb dans Ubuntu 12.04.

J'ai installé le libusb-1.0-0-dev. Cependant, lorsque j'essaye de compiler un programme comme ci-dessous:

#include<usb.h>
#include<stdio.h>
#include<libusb-1.0/libusb.h>
int main()
{
       libusb_init(NULL);            
       return 0;
}

Cela me donne une erreur en disant

/tmp/ccb75YtE.o: In function 'main':
usb.c:(.text+0x11): undefined reference to 'libusb_init'
collect2: ld returned 1 exit status

J'utilise la commande cc <file name> -lusb pour le compiler. Quel pourrait être le problème?

2
PaulDaviesC

Essayez de changer le - lusb en - lusb-1., comme ceci:
$ cc <file name> -lusb-1.0

5
Jesse

Vous devez passer la commande -lusb à l'éditeur de liens. Vous incluez l'en-tête mais vous devez également lier le code à la bibliothèque libusb (qui doit également être installée)

0
Bert