Ubuntu

ubuntu 中的 udev 和 usb 庫的 32 位版本

  • February 2, 2020

我有一個使用libudevlibusb庫的項目。

作業系統:Ubuntu 18.04 64 位

最初應用程序是 64 位的,所以沒有問題。

現在有了支持32位的新需求。當我嘗試通過添加-m32到我的建構 Makefile 進行編譯時,它會引發以下錯誤。

/usr/bin/ld: cannot find -ludev
/usr/bin/ld: skipping incompatible //usr/lib/x86_64-linux-gnu/libusb-1.0.so when searching for -lusb-1.0
/usr/bin/ld: skipping incompatible //usr/lib/x86_64-linux-gnu/libusb-1.0.a when searching for -lusb-1.0
/usr/bin/ld: cannot find -lusb-1.0
collect2: error: ld returned 1 exit status

我使用以下命令安裝 64 位版本:

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

我嘗試了以下命令,但沒有成功

sudo apt-get install libudev1:i386

安裝這些庫的 32 位版本的命令是什麼?

您需要安裝i386開發包:

sudo apt install libudev-dev:i386 libusb-1.0-0-dev:i386

這兩個可與其amd64版本共同安裝,因此您無需解除安裝任何東西。

引用自:https://unix.stackexchange.com/questions/564675