Linux 利伯斯旺';不安装?

Linux 利伯斯旺';不安装?,linux,usb,installation,libusb,Linux,Usb,Installation,Libusb,我正在尝试构建一个使用libusb的程序,我遇到了很多错误,比如 i2cbrdg.c:84: error: implicit declaration of function ‘usb_init’ i2cbrdg.c:88: error: implicit declaration of function ‘usb_find_busses’ i2cbrdg.c:89: error: implicit declaration of function ‘usb_find_devices’ i2cbrdg

我正在尝试构建一个使用libusb的程序,我遇到了很多错误,比如

i2cbrdg.c:84: error: implicit declaration of function ‘usb_init’
i2cbrdg.c:88: error: implicit declaration of function ‘usb_find_busses’
i2cbrdg.c:89: error: implicit declaration of function ‘usb_find_devices’
i2cbrdg.c:90: error: implicit declaration of function ‘usb_get_busses’
所以我正在尝试安装libusb,但在安装时遇到了麻烦。我已经安装了libusbdev,看起来还可以。当我执行dpkg-libusbdev时,我会得到一个目录列表。然而,当我使用dpkg-libusb时,我得到

Package `libusb' is not installed.
Use dpkg --info (= dpkg-deb --info) to examine archive files,
and dpkg --contents (= dpkg-deb --contents) to list their contents.
我已经完成了sudo apt安装libusb-1.0,一切顺利。当我再次尝试时,我得到了信息

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'libusb-1.0-0' for regex 'libusb-1.0'
Note, selecting 'libusb-1.0-0-dev' for regex 'libusb-1.0'
libusb-1.0-0-dev is already the newest version.
libusb-1.0-0 is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

我也尝试过用yum安装它,但它仍然说没有安装。我已经下载了包的tar,并在上面运行make,这看起来也不错(没有明确的错误消息)。我真的不知道下一步该做什么。dpkg消息一直告诉我它没有安装。谁能告诉我进去的方向吗?非常感谢您的帮助。

libusb0.1和libusb1.0库非常不同。您现在应该决定要使用哪一个。我推荐libusb1.0。上次我检查时,
libusb-dev
libusb
软件包安装libusb0.1,而
libusb-1.0-0-dev
软件包应该安装libusb1.0,至少在Ubuntu中是这样

安装所需的库后,需要在C文件中包含头文件,并添加正确的链接器选项

对于libusb1.0,include语句是

#include <libusb-1.0/libusb.h>

你应该提到你正在使用的Linux发行版(例如Ubuntu11.10)。对不起,我正在使用Debian 6.0.3。我试图安装1.0版本,但是它们已经安装好了,我已经有了这个标题。我没有正确的链接器,但这并没有解决问题。我的libusb.h位于/usr/local/include/libusb-1.0…我是否应该将makefile中的include目录更改为该目录,而不仅仅是/usr/local/include?现在的问题是您正在调用libusb 0.1函数。libusb1.0函数名的前缀都是“libusb”。查看libusb.h中的函数名,并在线查找文档。搜索libusb_init。
-lusb-1.0