移植openssl-0.9.8za
cp ../wpa_supplicant-2.5/patches/openssl-0.9.8za-tls-extensions.patch .patch -p1 < openssl-0.9.8za-tls-extensions.patch
./config --prefix=$PWD/out no-asm shared
no-asm是在交叉编译过程中不使用汇编代码代码加速编译过程.原因是它的汇编代码是对arm格式不支持的
修改Makefile
================================================================================
#CC= gcc
#CFLAG= -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -march=pentium -DL_ENDIAN -DTERMIO -O3 -fomit-frame-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-frame-pointer -Wall
DEPFLAG= -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_STORE
PEX_LIBS=
EX_LIBS= -ldl
EXE_EXT=
ARFLAGS=
#AR= ar $(ARFLAGS) r
#RANLIB= /usr/bin/ranlib
#NM= nm
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
MAKEDEPPROG= gcc
LIBDIR=lib
================================================================================
make clean
make
make install
tar -zxvf wpa_supplicant-2.5.tar.gz
cp defconfig .config
修改Makefile
#CC= gcc
#CFLAG= -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -march=pentium -DL_ENDIAN -DTERMIO -O3 -fomit-frame-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-frame-pointer -Wall
DEPFLAG= -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_STORE
PEX_LIBS=
EX_LIBS= -ldl
EXE_EXT=
ARFLAGS=
#AR= ar $(ARFLAGS) r
#RANLIB= /usr/bin/ranlib
#NM= nm
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
MAKEDEPPROG= gcc
LIBDIR=lib
================================================================================
make clean
make
make install
移植wpa_supplicant
wget http://w1.fi/releases/wpa_supplicant-2.5.tar.gztar -zxvf wpa_supplicant-2.5.tar.gz
cp defconfig .config
修改Makefile
=================================================================
CC := arm-hisiv300-linux-gcc
ifndef CC
CC=gcc
endif
CFLAGS += -I ../arm-hisiv300-linux-/libnl-1.1/include
CFLAGS += -I ../arm-hisiv300-linux-/openssl-0.9.8za/include
LIBS += -L ../arm-hisiv300-linux-/libnl-1.1/lib -lnl
LIBS += -L ../arm-hisiv300-linux-/openssl-0.9.8za/lib -lssl
LIBDIR := ./out/lib/
INCDIR := ./out/include/
BINDIR := ./out/sbin/
#export LIBDIR ?= /usr/local/lib/
#export INCDIR ?= /usr/local/include/
#export BINDIR ?= /usr/local/sbin/
=============================================================
make clean
make
make install
备注:中途报错
cannot find -lcrypto
解决:修改.config
# Remove IEEE 802.11i/WPA-Personal ASCII passphrase support
# This option can be used to reduce code size by removing support for
# converting ASCII passphrases into PSK. If this functionality is removed, the
# PSK can only be configured as the 64-octet hexstring (e.g., from
# wpa_passphrase). This saves about 0.5 kB in code size.
CONFIG_NO_WPA_PASSPHRASE=y
CC := arm-hisiv300-linux-gcc
ifndef CC
CC=gcc
endif
CFLAGS += -I ../arm-hisiv300-linux-/libnl-1.1/include
CFLAGS += -I ../arm-hisiv300-linux-/openssl-0.9.8za/include
LIBS += -L ../arm-hisiv300-linux-/libnl-1.1/lib -lnl
LIBS += -L ../arm-hisiv300-linux-/openssl-0.9.8za/lib -lssl
LIBDIR := ./out/lib/
INCDIR := ./out/include/
BINDIR := ./out/sbin/
#export LIBDIR ?= /usr/local/lib/
#export INCDIR ?= /usr/local/include/
#export BINDIR ?= /usr/local/sbin/
=============================================================
make clean
make
make install
备注:中途报错
cannot find -lcrypto
解决:修改.config
# Remove IEEE 802.11i/WPA-Personal ASCII passphrase support
# This option can be used to reduce code size by removing support for
# converting ASCII passphrases into PSK. If this functionality is removed, the
# PSK can only be configured as the 64-octet hexstring (e.g., from
# wpa_passphrase). This saves about 0.5 kB in code size.
CONFIG_NO_WPA_PASSPHRASE=y
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2012-09-21 stringstream的用法