本文主要是介绍wpa_supplicant的Linux移植,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前言:移植wpa_supplicant需要依赖libnl和openssl两个库,需要先移植这两个才行。
三个库文件:
libnl-3.2.27
openssl-1.0.2h
wpa_supplicant-2.5
一、libnl移植:
[hpclinux@ubuntu libnl-3.2.27]$ ./configure --host=arm-linux-gnueabi --prefix=$HOME/wifiManager/install
[hpclinux@ubuntu libnl-3.2.27]$ make -j4 && make install
二、openssl移植:
[hpclinux@ubuntu openssl-1.0.2h]$ ./Configure linux-generic32 --cross-compile-prefix=arm-linux-gnueabi- --prefix=/usr --install-prefix=$PWD/../install
[hpclinux@ubuntu openssl-1.0.2h]$ make depend
[hpclinux@ubuntu openssl-1.0.2h]$ make -j4 && make install
三、wpa_supplicant移植:
[hpclinux@ubuntu wpa_supplicant-2.5]$ cat wpa_supplicant/.config
CC=arm-linux-gnueabi-gcc
CONFIG_BACKEND=file
CONFIG_CTRL_IFACE=y
CONFIG_DEBUG_FILE=y
CONFIG_DEBUG_SYSLOG=y
CONFIG_DEBUG_SYSLOG_FACILITY=LOG_DAEMON
CONFIG_DRIVER_NL80211=y
CONFIG_DRIVER_WEXT=y
CONFIG_DRIVER_WIRED=y
CONFIG_EAP_GTC=y
CONFIG_EAP_LEAP=y
CONFIG_EAP_MD5=y
CONFIG_EAP_MSCHAPV2=y
CONFIG_EAP_OTP=y
CONFIG_EAP_PEAP=y
CONFIG_EAP_TLS=y
CONFIG_EAP_TTLS=y
CONFIG_IEEE8021X_EAPOL=y
CONFIG_LIBNL32=y
CONFIG_PEERKEY=y
CONFIG_PKCS12=y
CONFIG_SMARTCARD=y
CONFIG_WPS=y
CFLAGS += -I/home/hpclinux/wifiManager/install/include
CFLAGS += -I/home/hpclinux/wifiManager/install/include/libnl3
LIBS += -L/home/hpclinux/wifiManager/install/lib -lssl -lcrypto
LIBS += -L/home/hpclinux/wifiManager/install/lib -lcrypto
LIBS_p += -L/home/hpclinux/wifiManager/install/lib
[hpclinux@ubuntu wpa_supplicant-2.5]$ make -C wpa_supplicant/
[hpclinux@ubuntu wpa_supplicant-2.5]$ make -C wpa_supplicant/ BINDIR=/home/hpclinux/wifiManager/install/sbin LIBDIR=/home/hpclinux/wifiManager/install/lib install
四、编译wpa_gui-qt4例程:
修改文件:wpa_supplicant/wpa_gui-qt4/wpa_gui.pro
} else {
LIBS += -lrt
DEFINES += CONFIG_CTRL_IFACE_UNIX
SOURCES += ../../src/utils/os_unix.c
}
添加 LIBS += -lrt
[hpclinux@ubuntu wpa_gui-qt4]$ qmake && make
这篇关于wpa_supplicant的Linux移植的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!