安装缺少库的软件 - libusb1.0

安装缺少库的软件 - libusb1.0

我正在使用 cmake 安装名为 bladeRF 的软件。发生以下错误:

$ cmake -DCMAKE_INSTALL_PREFIX=~/user/local ../

CMake Error at host/libraries/libbladeRF/CMakeLists.txt:104 (message):
  No libbladeRF backends are enabled.  Please enable one or more backends.

因此我尝试向 cmake 添加一些标志:

$ cmake -DCMAKE_INSTALL_PREFIX=~/user/local -DENABLE_BACKEND_USB=ON -DENABLE_BACKEND_LIBUSB=ON  ../

CMake Error at host/libraries/libbladeRF/CMakeLists.txt:203 (message):
  libusb-1.0 not found.  This is required to use the libbladeRF libusb
  backend.  For binary releases, try setting LIBUSB_PATH.

然后,我使用以下命令搜索 libusb1.0 的路径:

$ dpkg -L libusb-1.0-0
/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/libusb-1.0-0
/usr/share/doc/libusb-1.0-0/changelog.gz
/usr/share/doc/libusb-1.0-0/README
/usr/share/doc/libusb-1.0-0/changelog.Debian.gz
/usr/share/doc/libusb-1.0-0/copyright
/lib
/lib/arm-linux-gnueabihf
/lib/arm-linux-gnueabihf/libusb-1.0.so.0.1.0
/lib/arm-linux-gnueabihf/libusb-1.0.so.0

这样 libusb 就安装好了。然后我向 cmake 添加了另一个标志:

cmake -DCMAKE_INSTALL_PREFIX=~/user/local -DENABLE_BACKEND_USB=ON -DENABLE_BACKEND_LIBUSB=ON  -LIBUSB_PATH=/lib/arm-linux-gnueabihf ../

CMake Error at host/libraries/libbladeRF/CMakeLists.txt:203 (message):
  libusb-1.0 not found.  This is required to use the libbladeRF libusb
  backend.  For binary releases, try setting LIBUSB_PATH.

我甚至尝试过以下两种方法:

export LIBUSB_PATH=/lib/arm-linux-gnueabihf
export PKG_CONFIG_PATH=/lib/arm-linux-gnueabihf

这些也不起作用。我该如何帮助 cmake 找到 libusb 的路径?

更新:gcc -v 似乎显示它在 /usr 中搜索,而 libusb 安装在 /lib 中。这是正确的吗?

答案1

通常在构建软件时,你需要发展版本的库。

您想要libusb-1.0-0-dev安装

答案2

我遇到了完全相同的问题。我的解决方案是执行以下操作:

sudo apt install libusb-1.0-0
sudo apt install libusb-1.0-0-dev

然后我尝试了几次,但 cmake 不起作用,即使 libusb 显示 ( dpkg -L libusb-1.0-0 libusb1.0-0-dev)。然后我重新启动 ( sudo reboot now),一旦我重新登录,就从克隆的 repo 返回 bladeRF/host 文件夹,只需执行mkdir build, cd buildcmake ..它就成功了。祝你好运!

相关内容