在Ubuntu环境下搭建Cross Compiler后如何编译hostapd

来源:互联网 发布:温十如何解除网络禁用 编辑:程序博客网 时间:2024/06/06 05:48

菜鸟搭建Ubuntu 环境及编译hostapd

之前很少接触到Liunx 系统,以至于对Ubuntu的安装不熟悉,该篇文档介绍如何在Ubuntu环境下搭建Cross Compiler 后成功编译hostapd &wpa_supplicant


1.如何安装和升级到一个新的kernel 版本

   在这里就不详细叙述相应的步骤,

 可参考:http://www.wikihow.com/Install-and-Upgrade-to-a-New-Kernel-on-Linux-Mint

2.搭建好环境后需要移植库

   a准备libnl code,可从该网址获取:http://www.infradead.org/~tgr/libnl/

    目前大部分开发者都是使用libnl-3x ,个人是下载libnl-3.2.25.tar.gz 编译的

 &以libnl3.x为例,libnl参考编译如下:
  b.解压tar zxf libnl-3.2.25.tar.gz

  c.cd libnl-3.2.25后,prefix指定libnl的安装路径,make install后即可将.so和头文件安装到指定的路径,参考如下:

$  tar zxf libnl-3.2.25.tar.gz
$ ./configure --prefix=<path to install the libnl>  --host=arm-linux-gnueabihf CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ ld=arm-linux-gnueabihf-ld
$ make
$ make install

3.移植libnl 库成功后,下载相应的Source code到Ubuntu 中,

  &以hostapd 为例:

a.在hostapd /.config,修改如下宏定义,其中CFLAGS和LIBS分别为libnl的头文件和库文件的位置。

例如:

我的libnl安装示例目录为/home/peter/libnl3:
CONFIG_DRIVER_NL80211=y
CONFIG_LIBNL20=y
CONFIG_LIBNL32=y
CFLAGS += -I/home/peter/libnl3/include/libnl3
LIBS += -L/home/peter/libnl3/lib

提示:在libnl-1x版本是不需要添加

CONFIG_LIBNL20=y

CONFIG_LIBNL32=y


4.对于编译wpa_supplicant可参考hostapd

刚刚接触到,只是想把自己刚刚接触到的整理一下方便以后查阅

这是第一篇文档哦,后续工作中遇到一些问题再整理一下

0 0
原创粉丝点击