libusb的相關問題

2021-07-28 23:41:13 字數 921 閱讀 4917

由於在通訊過程中使用了libusb,並且在其中也遇到了不少的問題,因此記錄下來

在這裡,我使用的是最新版本的libusb-1.0.21, libusb-compat-0.1.5

其中libusb-1.0和libusb-compat-0.1中的函式以及編譯時的鏈結方式都是不一樣的。

在這裡,檢視某動態庫內的函式的命令是nm加上動態庫名

之後利用tar命令解壓,然後執行./configure --host=arm-none-linux-gnueabi(指定交叉編譯工具鏈)

(對於libusb-1.0版本執行configure時可能會出現以下錯誤)configure:error:「udev support requested but libudev not installed」 

上網查詢之後,發現在命令後加上--disable -udev即可

進行make操作,沒有問題,之後make install時需要有root許可權,但是發現在加上sudo命令後出現了

../libtool: line 1085: arm-none-linux-gnueabi-ranlib: command not found

make[2]: *** [install-libltlibraries] error 127

在命令列執行sudo -i命令後切換到root許可權,然後執行make install,成功生成了我們所需的庫檔案

然後在程式編譯時需要鏈結庫檔案時,首先需要有-l包含動態庫的路徑,

其次有-lusb和-lusb-1.0兩種選擇,具體的可用nm檢視所使用的函式在哪個庫中,如果鏈結錯了,編譯時將會出現一大堆undefined

如果在編譯時,提示cannot find -lusb,那麼就應該是只安裝了libusb-1.0而並沒有安裝libusb-compat-0.1而做造成的錯誤

安裝libusb出錯:

交叉編譯:

libusb的交叉編譯

二 安裝 在linux終端下輸入命令 1 解壓 tar xvf libusb 1.0.21.tar.bz2 2 進入目錄cd libusb 1.0.21,生成待安裝的目錄mkdir install 交叉編譯好的庫檔案將放在此目錄下 3 配置安裝選項 configure host arm linux ...

Lib USB 在vc6 0下的應用

2.通過vc建立乙個dialog。3.設定好介面 4.正式開始usb設定 5 program.include usb.h 這個標頭檔案是要包括的,裡面包含了必須要用到的資料結構 我們將乙個裝置的屬性用乙個結構體來概括 typedefstruct device descript 用來設定傳輸資料的時間...

windbg的相關問題

一 windbg的符號配置 symbol file path c mysymbols c symbols srv c windows symbols 二 local kernel 由於殺軟的原因,阻止windbg不能讀核心,因此會出現 warning inaccessible path c symb...