iw工具安装和使用 (修正版)
iw 是一種新的基于 nl80211 的用于無線設(shè)備的CLI配置實用程序。它支持最近已添加到內(nèi)核所有新的驅(qū)動程序。采用無線擴展接口的舊工具iwconfig已被廢棄,強烈建議切換到 iw 和 nl80211。
iw發(fā)布壓縮包可以從這里獲取:http://git.sipsolutions.net/?p=iw.git
本文用到的源碼有:
iw-3.11.tar.bz2,下載地址點擊這里!
libnl-3.2.23.tar.gz,下載地址點擊這里!
tar xzf libnl-3.2.23.tar.gz ? ? ? ? ? ? ? ? ? ? ? ? /* 編譯iw需要用到的庫文件 */
cd libnl-3.2.23/
./configure --host=arm-linux --prefix=$PWD/tmp
編譯會出現(xiàn)錯誤,說確實一些宏,修改 lib/addr.c 添加宏,宏來自內(nèi)核源碼源碼linux-3.4.2\include\linux\Socket.h文件里面,添加相應(yīng)的宏。
make
make install
把編譯出來的庫文件應(yīng)該放入NFS文件系統(tǒng)的lib目錄:cp -r lib ?到文件系統(tǒng)lib
tar xjf iw-3.11.tar.bz2
cd iw-3.11/
修改Makefile:
CC ?= "gcc"修改成CC = "arm-linux-gcc"
NL3xFOUND := $(shell $(PKG_CONFIG) --atleast-version=3.2 libnl-3.0 && echo Y)修改成NL3xFOUND := Y
修改下面兩行為自己安裝的nl庫文件路徑
LIBS += -L/libnl-3.2.25/install/lib
CFLAGS += -I/libnl-3.2.25/install/include/libnl3
另外還有個關(guān)鍵:LIBS += -lnl-genl-3后邊一定要加一個-lnl-3,否則會提示找不到定義的問題。
編譯出現(xiàn)沒有定義這個函數(shù),我們自己百度然后添加上去就行。
在info.c的代碼前面添加(下載的文件已經(jīng)添加過)
#define htole16(X) ?(((((uint16_t)(X)) << 8) | ((uint16_t)(X) >> 8)) & 0xffff)
編譯即可獲得iw工具了。
總結(jié)
以上是生活随笔為你收集整理的iw工具安装和使用 (修正版)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux 开发板4G转WiFi热点 手
- 下一篇: rndis ethernet gadge