Wireless_tools、wpa_supplicant和openssl移植
一、Wireless_tools移植
1.当前使用wireless_tools_29
下载地址:https://hewlettpackard.github.io/wireless-tools/wireless_tools.29.tar.gz
2.解压下载的源码到指定目录。
tar -xvf wireless_tools.29.tar.gz
3.进入根目录,根据自己的平台更改Makefile文件,我当前使用hisiv300的如下:
设置安装路径:PREFIX = ./ #当前路径
#CC = gcc
CC = arm-hisiv300-linux-gcc
AR = arm
RANLIB = arm-hisiv300-linux-ranlib
4.编译
make clean
make
make install
这样编译后的工具就会安装到指定的PREFIX目录。
二、openssl移植
openssl 下载地址:ftp://ftp.openssl.org/source/old/0.9.x/ 当然你可以根据自己的需求下载最新版本。
wpa_supplicant官方网站进行下载:http://w1.fi/releases/
当前我使用openssl-0.9.8za和wpa_supplicant-2.5
分别使用tar -xvf openssl-0.9.8za.tar.gz 和tar -xvf wpa_supplicant-2.5.tar.gz 解压到当前路径
1.打补丁
cp wpa_supplicant-2.5/patches/openssl-0.9.8za-tls-extensions.patch openssl-0.9.8za/
cd openssl-0.9.8za/
patch -p1 < openssl-0.9.8za-tls-extensions.patch
结果显示
patching file ssl/s3_clnt.c
patching file ssl/s3_srvr.c
patching file ssl/ssl.h
patching file ssl/ssl_err.c
patching file ssl/ssl_sess.c
patching file ssl/t1_lib.c
patching file ssl/tls1.h
patching file util/ssleay.num
./config --prefix=$PWD/out no-asm shared
no-asm是在交叉编译过程中不使用汇编代码代码加速编译过程.原因是它的汇编代码是对arm格式不支持的
2.修改Makefile
#CC= gcc
#CFLAG= -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -DL_ENDIAN -DTERMIO -O3 -fomit- -pointer -Wall
CC= arm-hisiv300-linux-gcc
CFLAG= -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -march=armv5 -DL_ENDIAN -DTERMIO -O3 -fomit- -pointer -Wall
DEPFLAG= -DOPENSSL_NO_CAMELLIA -DOPENSSL_NO_CAPIENG -DOPENSSL_NO_CMS -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_MDC2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SEED
PEX_LIBS=
EX_LIBS= -ldl
EXE_EXT=
ARFLAGS=
#AR= ar $(ARFLAGS) r
#ARD=ar $(ARFLAGS) d
#RANLIB= /usr/bin/ranlib
AR = arm-hisiv300-linux-ar $(ARFLAGS) r
RANLIB= arm-hisiv300-linux-ranlib
NM= arm-hisiv300-linux-nm
PERL= /usr/bin/perl
TAR= tar
TARFLAGS= --no-recursion --record-size=10240
MAKEDEPPROG= gcc
LIBDIR=lib
3.编译安装
make clean
make
make install
4.安装出错解决:
smime.pod around line 272: Expected text after =item, not a number
smime.pod around line 276: Expected text after =item, not a number
smime.pod around line 280: Expected text after =item, not a number
smime.pod around line 285: Expected text after =item, not a number
smime.pod around line 289: Expected text after =item, not a number
POD document had syntax errors at /usr/bin/pod2man line 71.
解决方法:
删除 pod2man文件:sudo rm /usr/bin/pod2man
三、wpa_supplicant移植
待续...
继续阅读与本文标签相同的文章
慈利这14个村要新建4G基站,有你老家吗?
镭速云传企业网盘为外贸行业提供解决方案
-
11个点让你的Spring Boot启动更快
2026-05-18栏目: 教程
-
2019年9月份 阿里云域名优惠口令汇总
2026-05-18栏目: 教程
-
《安全说道》第三期 | 你家“大门”关好了吗?猪猪侠有话说
2026-05-18栏目: 教程
-
为什么支付宝有这么多“原生”技术牛人?
2026-05-18栏目: 教程
-
阿里巴巴小程序繁星计划 9月27日有话要说
2026-05-18栏目: 教程
