ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

2021-01-13

2021-01-17 15:33:49  阅读:193  来源: 互联网

标签:13 01 supplicant openssl 2021 install EAP CONFIG wpa


wpa_supplicant移植

下载wpa_supplicant,我这里使用的是wpa_supplicant-2.9.tar.gz,下载地址是http://w1.fi/wpa_supplicant/。下载完毕后,放到Linux目录下解压。tar xvfzwpa_supplicant-2.5.tar.gz。
进入目录wpa_supplicant-2.9/wpa_supplicant下首先建立配置文件:
cp defconfig .config,然后修改Makefile,添加交叉编译工具链 C=arm-linux-gcc ,这里我的环境变量已经导出,故可以直接写,如果环境变量没有导出,需添加交叉编译工具链的绝对路径。
修改完毕Makefile后进行make编译,会出现如下报错:

../src/common/dpp.c:12:30: fatal error: openssl/opensslv.h: No such file or directory

根据报错分析,编译时找不到openssl库,接下来修改报错需添加openssl库。下载地址是ftp://ftp.openssl.org/source/old/1.0.1/。但是打开网址后发现有很多版本,我们需要下载相匹配的版本才行。打开wpa_supplicant-2.9/wpa_supplicant/README发现有如下说明:

167 Optional libraries for EAP-TLS, EAP-PEAP, and EAP-TTLS:
168 - OpenSSL (tested with 1.0.1 and 1.0.2 versions; assumed to
169   work with most relatively recent versions; this is likely to be
170   available with most distributions, http://www.openssl.org/)
171 - GnuTLS
172 - internal TLSv1 implementation

README中提到,1.0.1和1.0.2版本开发人员已经测试过可以使用,所以我们下载这两个版本的。我下载的是openssl-1.0.1.tar.gz。
下载后解压tar -xvf openssl-1.0.1.tar.gz ,解压后进入openssl-1.0.1进行编译安装,建议安装的时候重新创建一个目录,因为生成的库等只在交叉编译wpa_supplicant时使用,这样可以保持系统干净。然后进行修改Make file如下:
CC=arm-linux-gcc
AR=arm-linux-ar$(ARFLAGS) r
RANLIB=arm-linux-ranlib
NM= arm-linux-nm
INSTALLTOP=刚才你建立的安装目录,要使用绝对路径,不然在make install的时候会出错
OPENSSLDIR=刚才你建立的安装目录,要使用绝对路径,不然在make install的时候会出错

然后然后,执行make&&make install。
在执行make install的时候会报错如下:

POD document had syntax errors at /usr/bin/pod2man line 71.

然后进入安装目录只看到一个man目录,结合报错说明,在安装man手册时出现了错误,解决办法有两个:1.找到错误并修改;2.取消安装man手册。由于水平有限,我采取了第二种方式,也因为我们不需要看man手册。打开Makefile修改:
修改前:

542 install: all install_docs install_sw 

修改后:

542 install: all install_sw 

然后再执行make install,将会安装成功。
注:博主下载openssl-1.0.12tar.gz版本,按照以上同样方法移植的时候没有报任何错误,原因未知。

移植完openssl后再去编译wpa_supplicant,此时又会报错,找不到libnl3和dbus-1.0两个库,实在每办法,只好删减功能,将暂时不需要的功能去掉,修改.config文件如下:

CONFIG_DRIVER_WEXT=y
CONFIG_DRIVER_WIRED=y
CONFIG_IEEE8021X_EAPOL=y
CONFIG_EAP_MD5=y
CONFIG_EAP_MSCHAPV2=y
CONFIG_EAP_TLS=y
CONFIG_EAP_PEAP=y
CONFIG_EAP_TTLS=y
CONFIG_EAP_GTC=y
CONFIG_EAP_OTP=y
CONFIG_EAP_LEAP=y
CONFIG_PKCS12=y
CONFIG_SMARTCARD=y
CONFIG_CTRL_IFACE=y
CONFIG_BACKEND=file
CONFIG_PEERKEY=y

然后再make就会编译通过。
初次接触,有误地方请指正。只用于学习。

标签:13,01,supplicant,openssl,2021,install,EAP,CONFIG,wpa
来源: https://blog.csdn.net/qq_41953551/article/details/112596286

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有