wpa_supplicant开源库交叉编译(实测可以)

wpa_supplicant 的编译依赖 libnl 库、libssl库,因此需要先编译这两个库。
1 libssl编译
1.1下载

下载链接:https://www.openssl.org/source/ 下载文件openssl-1.0.2r.tar.gz
1.2编译
解压文件,进入主目录,使用如下命令编译
a) mkdir _install
b) ./config no-asm shared --prefix=$PWD/_install --cross-compile-prefix=arm-hisiv500-linux-uclibcgnueabi-
/_install为相关库的存放路径
arm-himix100-linux- 为交叉编译工具链
注意,在编译过程中,如果出现如下错误:
arm-himix100-linux-gcc: error: unrecognized command line option ‘-m64’
则需要打开Makefile 查找里面的 ‘-m64’,并将其删除即可
/
c) make CC=arm-hisiv500-linux-uclibcgnueabi-gcc
d) make insatll

2 libnl编译
2.1 下载

下载链接:
http://www.linuxfromscratch.org/blfs/view/svn/basicnet/libnl.html 下载当前最新包libnl-3.5.0.tar.gz
2.2 编译
解压进入主目录,使用如下命令编译:
a) mkdir _install
b) ./configure CC=arm-hisiv500-linux-uclibcgnueabi-gcc --host=arm-hisiv500-linux-uclibcgnueabi --prefix=$(pwd)/_install/
c) make
d) make install
如果上面的host报错无法识别,就设置成–host=arm

3 wpa_supplicant编译
3.1 下载

下载链接:http://w1.fi/releases/ 下载当前最新包wpa_supplicant-2.9.tar.gz
3.2 编译
解压并进入主目录 使用如下命令编译
a) cd wpa_supplicant/

/*注释掉dbus

#CONFIG_CTRL_IFACE_DBUS_NEW=y
#Add introspection support for new DBus control interface
#CONFIG_CTRL_IFACE_DBUS_INTRO=y

在在Makefile中添加libssl和libnl的路径,如下:

CFLAGS += -I/home/openssl-1.0.2r/_install/include
LIBS += -L/home/openssl-1.0.2r/_install/lib
CFLAGS += -I/home/libnl-3.4.0/_install/include/libnl3
LIBS += -L/home/libnl-3.4.0/_install/lib

路径根据自己本地实际情况进行更改*/
b) cp defconfig .config
c) make CC=arm-hisiv500-linux-uclibcgnueabi-gcc

上一篇:Docker跨平台编译


下一篇:Android逆向基础之ARM汇编语言知识总结