iw工具安装和使用 (修正版)

iw 是一种新的基于 nl80211 的用于无线设备的CLI配置实用程序。它支持最近已添加到内核所有新的驱动程序。采用无线扩展接口的旧工具iwconfig已被废弃,强烈建议切换到 iw 和 nl80211。

iw发布压缩包可以从这里获取: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
编译会出现错误,说确实一些宏,修改 lib/addr.c 添加宏,宏来自内核源码源码linux-3.4.2\include\linux\Socket.h文件里面,添加相应的宏。

make
make install


把编译出来的库文件应该放入NFS文件系统的lib目录:cp -r lib  到文件系统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

另外还有个关键:LIBS += -lnl-genl-3后边一定要加一个-lnl-3,否则会提示找不到定义的问题。

编译出现没有定义这个函数,我们自己百度然后添加上去就行。
在info.c的代码前面添加(下载的文件已经添加过)
#define htole16(X)  (((((uint16_t)(X)) << 8) | ((uint16_t)(X) >> 8)) & 0xffff)


编译即可获得iw工具了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值