wpa_supplicant交叉编译

文章目录

  • 源码
  • 编译
    • openssl编译
    • libnl
    • 交叉编译WPA
  • 开发板测试使用

源码

wpa_supplicant官网:http://w1.fi/wpa_supplicant/
GIT源:git://w1.fi/hostap.git
在这里插入图片描述

openssl 源码:
https://www.openssl.org/
libnl 源码:
https://github.com/thom311/libnl/releases/download/libnl3_5_0/libnl-3.5.0.tar.gz 或
https://github.com/thom311/libnl/releases/

编译

编译wpa之前需要先编译openssl 以及 libnl

openssl编译

./Configure linux-armv4 shared no-asm --prefix=$(pwd)/install CROSS_COMPILE=arm-linux-gnueabihf-
make -j16
make install

libnl

./configure --host=arm-linux-gnueabihf --prefix=$(pwd)/install
在这里插入图片描述
如果出现以上错误提示,需要对应安装:
apt-get install bison
apt-get install flex

编译:
make -j16
make install

交叉编译WPA

  1. cp defconfig .config
  2. vim .config
  3. 添加如下内容
    CC = arm-linux-gnueabihf-gcc
    #openssl库和头文件路径

CFLAGS += -I/mnt/f/Project/Linux/Study/openssl-3.0.13/install/include
LIBS += -L/mnt/f/Project/Linux/Study/openssl-3.0.13/install/lib -lssl -lcrypto
#libnl库和头文件路径
CFLAGS += -I/mnt/f/Project/Linux/Study/libnl-3.2.25/install/include/libnl3
LIBS += -L/mnt/f/Project/Linux/Study/libnl-3.2.25/install/lib
export PKG_CONFIG_PATH=/mnt/f/Project/Linux/Study/wpa_supplicant-2.10/wpa_supplicant/install【替换成你的路径】
make -j16

如果出现如下dbus.h缺失
在这里插入图片描述
打开.config注释掉两个配置选项
#CONFIG_CTRL_IFACE_DBUS_NEW=y
#CONFIG_CTRL_IFACE_DBUS_INTRO=y

出现linux/if.h:71:2: error: redeclaration of enumerator ‘IFF_UP’
可能是libnl库的版本不对,比如3.2.25 需要用3.5.0

出现没有 if_macsec.h头文件
在.config中加上CFLAGS += -I/mnt/f/Project/Linux/Study/libnl-3.5.0/include/linux-private 该文件存在于libnl中
在这里插入图片描述
将编译出来的wpa_cli 以及 wpa_supplicant
在这里插入图片描述

开发板测试使用

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/713263.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自定义preference的使用

自定义preference的使用 control_iconsize_preference_top.xmlcontrol_iconsize_preference_middle.xmlcontrol_iconsize_preference_bottom.xmlcontrol_iconsize_preference_airplane.xmlcontrol_iconsize_preference_no_arrow_top.xmlcontrol_iconsize_preference_no_arrow_m…

3 开源鸿蒙OpenHarmony4.1源码下载、编译,生成OHOS_Image可执行文件的最简易流程

开源鸿蒙OpenHarmony4.1源码下载、编译,生成OHOS_Image可执行文件的最简易流程 作者将狼才鲸日期2024-03-01 准备一台Windows电脑 安装VMware或者VMware Player虚拟机 从华为镜像下载Ubuntu系统,用国内源下载速度更快 Ubuntu 镜像说明https://repo.hu…

map和set例题应用

个人主页:Lei宝啊 愿所有美好如期而遇 目录 第一题 第二题 第三题 第一题 随机链表的复制https://leetcode.cn/problems/copy-list-with-random-pointer/description/ 思路 首先遍历旧链表,并创建新节点,同时用map将旧节点与新节点…

python模型训练

目录 1、新建模型 train_model.py 2、运行模型 (1)首先会下载data文件库 (2)完成之后会开始训练模型(10次) 3、 训练好之后,进入命令集 4、输入命令:python -m tensorboard.ma…

网络工程师笔记6

ICMP协议 Internet控制报文协议ICMP(InternetControlMessage Protocol)是网络层的一个重要协议。ICMP协议用来在网络设备间传递各种差错和控制信息,它对于收集各种网络信息、诊断和排除各种网络故障具有至关重要的作用。使用基于ICMP的应用时,需要对ICMP…

Vue.js+SpringBoot开发社区买菜系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、系统设计2.1 功能模块设计2.1.1 数据中心模块2.1.2 菜品分类模块2.1.3 菜品档案模块2.1.4 菜品订单模块2.1.5 菜品收藏模块2.1.6 收货地址模块 2.2 可行性分析2.3 用例分析2.4 实体类设计2.4.1 菜品分类模块2.4.2 菜品档案模块2.4.3…

多输入多输出 | Matlab实现RIME-BP霜冰算法优化BP神经网络多输入多输出预测

多输入多输出 | Matlab实现RIME-BP霜冰算法优化BP神经网络多输入多输出预测 目录 多输入多输出 | Matlab实现RIME-BP霜冰算法优化BP神经网络多输入多输出预测预测效果基本介绍程序设计往期精彩参考资料 预测效果 基本介绍 多输入多输出 | Matlab实现RIME-BP霜冰算法优化BP神经网…

Springboot+vue的考勤管理系统(有报告)。Javaee项目,springboot vue前后端分离项目。

演示视频: Springbootvue的考勤管理系统(有报告)。Javaee项目,springboot vue前后端分离项目。 项目介绍: 采用M(model)V(view)C(controller)三层…

GitHub Copilot extension activation error: ‘No access to GitHub Copilot found‘

好不容易学生认证通过了,打开vscode用copilot结果一直报这个错误。我的原因是:还未给copilot授权, 通过了学生认证后要进入这里进行授权:

Vue Html中插入本地视频(Video 标签)

在 Vue 中插入本地视频可以通过使用标签来实现。你可以将视频文件放在你的项目中的合适位置(比如assets文件夹),然后在 Vue 组件中引用这个视频文件。html同理 首先,在你的 Vue 项目中的assets文件夹下放入你的视频文件&#xff…

k8s单机部署zookeeper

(作者:陈玓玏) 拉取镜像:docker pull zookeeper;编辑yaml: apiVersion: v1 kind: Service metadata:name: zookeeperlabels:app: zookeeper spec:ports:- name: clientport: 2181protocol: TCPtargetP…

QT TCP传输文件+ui

TCPFile tcp协议传输文件 TCPFile.pro QT core gui networkclientwidget.h #include <QWidget> #include <QTcpSocket> // 通信套接字 #include <QFile>private slots:void on_pushButton_clicked();private:QTcpSocket *tcpSocket;QFile file; /…

selenium进阶设置

1、无头浏览设置和规避爬虫检测 问题一&#xff1a;有界面时可以展示的元素&#xff0c;无头模式报错element not interactable 解决方法&#xff1a;通过错误截图发现&#xff0c;页面上有该元素&#xff0c;但是页面不够大&#xff0c;没有显示想定位的元素。 from seleni…

centos7 安装 docker-compose

1、直接参考官方&#xff1a; Install Compose standalone | Docker Docs 1、安装命令 curl -SL https://github.com/docker/compose/releases/download/v2.24.6/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose 2、修改 docker-compose 执行权限 不修改执行权…

升级pycharm之后,jupyter无法识别新安装的包

import sys print(sys.executable)在jupyter中运行&#xff0c;检测一下当前jupyter内核运行在哪个环境中-再pycharm的setting里面设置jupyter环境并没有什么用。需要重新在想要使用的环境中重新安装jupyter内核&#xff0c;并且重启。

c# cad2016系统变量解释说明

一、cad系统变量设置和获取 /// <summary> /// 设置CAD系统变量 /// </summary> /// <param name"name">变量名</param> /// <param name"value">变量值</param> public static void SetSystemVariable(string name,…

Sora背后的技术原理:深度探索Video Compression Network与语言理解在视频生成中的应用

Sora背后的技术原理&#xff1a;深度探索Video Compression Network与语言理解在视频生成中的应用 摘要&#xff1a; 随着人工智能技术的飞速发展&#xff0c;视频生成技术逐渐成为研究热点。Sora作为一种先进的视频生成技术&#xff0c;其背后的技术原理值得深入研究。本文详…

物联网平台如何实现SaaS化

物联网平台实现SaaS化是一个复杂的过程&#xff0c;涉及到多个关键步骤和要素。以下是实现物联网平台SaaS化的主要步骤和要点&#xff0c;以及如何确保成功实施。 一、平台架构设计是实现SaaS化的基础 一个分布式、模块化的架构设计对于支持多租户、高并发、高可扩展性等特性…

【Django】执行查询—F()表达式

F() F()可以实现将模型字段值与同一模型中的另一字段做比较。举个例子看一下&#xff1a; class Entry(models.Model):...number_of_comments models.IntegerField(default0)number_of_pingbacks models.IntegerField(default0)...找到所有 number_of_pingbacks 大于 numbe…

大数据权限认证 Kerberos 部署

文章目录 1、什么是 Kerberos2、Kerberos 术语和原理2.1、Kerberos 术语2.1、Kerberos 原理 3、Kerberos 服务部署3.1、前置条件3.2、安装依赖3.3、配置 krb5.conf3.4、配置 kdc.conf3.5、配置 kadm5.acl3.6、安装 KDC 数据库3.7、启动服务3.8、创建 Kerberos 管理员3.9、创建普…