hostapd移植(2.7版本)

 

1. Openssl交叉编译:(选择的版本是openssl-1.1.1.tar.gz)

参考我的上一篇:https://www.cnblogs.com/TiddlerYu/p/12643041.html

编译出 openssl 

 

2. Libnl: 交叉编译 (选择的版本是libnl-3.2.25.tar.gz)

hostapd2.7的区别在于,libnl需要3.0以上版本的支持。

具体选择哪个版本的libnl可以配置hostapd/.config

# Use libnl v2.0 (or 3.0) libraries.
CONFIG_LIBNL20=y
# Use libnl 3.2 libraries (if this is selected, CONFIG_LIBNL20 is ignored)
#CONFIG_LIBNL32=y

 

libnl下载:

  http://www.infradead.org/~tgr/libnl/files/

解压安装包,建一个__install文件夹用来保存安装的库文件

# mkdir __install

#./configure --host=arm CC=arm-himix100-linux-gcc --prefix=$(pwd)/__install --enable-static

#make & make install

就可以看到__install/lib/ 下面有生成的libnl静态库:

 

 

 

3. hostapd2.7版本的编译参考:

https://www.cnblogs.com/TiddlerYu/p/12643041.html

 注意:

      

如果出现如下错误提示:

Package libnl-3.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `libnl-3.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libnl-3.0' found
则需要将libnl-3.0.pc所在目录添加到PKG_CONFIG_PATH变量中,先用如下命令查看所在目录:

如我目前的路径是:/source/libnl-3.2.25/__install/lib/pkgconfig

然后添加到PKG_CONFIG_PATH变量,命令如下:

export PKG_CONFIG_PATH=/source/libnl-3.2.25/__install/lib/pkgconfig/:$PKG_CONFIG_PATH

4. 关于裁剪:

  hostapd的裁剪,可以配置/hostapd2.7/hostapd/.config 文件,增减相关的功能。

我的配置:

  该配置可以直接不用链接openssl库,只需要链接libnl就可以编译成功。

1 CONFIG_DRIVER_NL80211=y
2 CONFIG_LIBNL20=y
3 CONFIG_IEEE80211N=y
4 CONFIG_WPS=y
5 CONFIG_PKCS12=y
6 CONFIG_TLS=internal
7 CONFIG_INTERNAL_LIBTOMMATH=y

 

 

 

 

 

 

 

 

 

 

 

 

        

posted @ 2020-05-14 11:43  被使用的昵称&  阅读(1762)  评论(0编辑  收藏  举报