我正在使用libusb为键盘定制USB驱动程序。我写了一个简单的程序,试图编译该程序,但收到警告,但未生成输出文件。
这是我的程序。
#include <stdio.h>
#include <libusb-1.0/libusb.h>
void main(){
usb_init(NULL);
return;
}
错误消息是
sample.c: In function ‘main’:
sample.c:7:3: warning: implicit declaration of function ‘usb_init’ [-Wimplicit-function-declaration]
usb_init(NULL);
^
/tmp/ccYbyFAK.o: In function `main':
sample.c:(.text+0xf): undefined reference to `usb_init'
collect2: error: ld returned 1 exit status
我运行此命令来设置库衬标志,命令成功执行。
pkg-config --list-all
pkg-config --libs libusb
我尝试了以下命令来执行我的编
gcc -o output sample.c -lusb-1.0
gcc -o output sample.c -libusb-1.0
请帮助我解决此问题
答案 0 :(得分:0)
您将包含libusb 1.0的头文件,但是您正在使用usb_init
,该函数不是API的 部分。请注意,libusb 0.1确实很旧,并且具有与libusb 1.0不同的API。您应该参考libusb 1.0的文档以了解libusb 1.0支持哪些功能: