WIFI驱动移植实验: libnl 库的移植(wpa_supplicant 依赖库)

2024-03-28 20:20

本文主要是介绍WIFI驱动移植实验: libnl 库的移植(wpa_supplicant 依赖库),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一.  简介

前面实现了WIFI驱动的移植,而连接某个WIFI热点上就需要用到 wpa_supplicant 工具,所以,本文开始为 移植 wpa_supplicant 工具做准备。

wpa_supplicant 依赖于 openssl库 与 libnl库,前面一篇文章已经完成了 openssl库的移植。文章如下:

WIFI驱动移植实验: openssl 移植-CSDN博客

本文实现wpa_supplicant 工具所依赖的另一个库: libnl库的交叉编译及移植。

二.  WIFI驱动移植实验: libnl 库的移植(wpa_supplicant 依赖库)

wpa_supplicant 也依赖于 libnl ,因此还需要移植一下 libnl 库, libnl 源码已经放到了开发板光盘中,路径为: 1 、例程源码 - 7 、第三方库源码 - libnl-3.2.23.tar.gz

libnl 源码压缩包拷贝到 Ubuntu 系统的某个 目录下:
wangtian@wangtian-virtual-machine:~/zhengdian_Linux/tools$ cp /mnt/hgfs/Ubuntu_Shares/libnl-3.2.23.tar.gz ./
解压 libnl 源码压缩,使用如下命令进行解压:
 tar -xvf libnl-3.2.23.tar.gz 

得到解压完成以后会得到 libnl-3.2.23 文件夹,然后,在新建一个名为“ libnl ”的文件夹,用 于存放 libnl 的编译结果:
wangtian@wangtian-virtual-machine:~/zhengdian_Linux/tools$ mkdir libnl_tools

配置 libnl源码

进入到 libnl-3.2.23 文件夹中,然后执行如下命令进行配置:
wangtian@wangtian-virtual-machine:~/zhengdian_Linux/tools/libnl-3.2.23$ ./configure --host=arm-linux-gnueabihf --prefix=/home/wangtian/zhengdian_Linux/tools/libnl_tools
--host 用于指定交叉编译器的前缀,这里设置为“ arm-linux-gnueabihf ”, --prefix 用于指定编 译结果存放目录,这里肯定要设置为我们刚刚创建的 libnl 文件夹。

编译,安装

配置完成以后就可以执行如 下命令对 libnl 库进行编译、安装:
make  //编译
make install //安装

三.  拷贝libnl库到开发板的文件系统下

编译安装完成以后,在 创建的 libnl_tools 目录会生成如下内容

我们需要 libnl_tools 目录中 lib 目录下的 libnl 库文件,将 lib 目录下的所有文件拷贝到开发板根 文件系统的 /usr/lib 目录下,命令如下所示:
wangtian@wangtian-virtual-machine:~/zhengdian_Linux/tools/libnl_tools$ sudo cp ./lib/* /home/wangtian/linux/nfs_File/rootfs/usr/lib/ -rf

至此, wpa_supplicant 工具所依赖的另一个库: libnl库的移植已经完成。

这篇关于WIFI驱动移植实验: libnl 库的移植(wpa_supplicant 依赖库)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/856615

相关文章

每天认识几个maven依赖(ActiveMQ+activemq-jaxb+activesoap+activespace+adarwin)

八、ActiveMQ 1、是什么? ActiveMQ 是一个开源的消息中间件(Message Broker),由 Apache 软件基金会开发和维护。它实现了 Java 消息服务(Java Message Service, JMS)规范,并支持多种消息传递协议,包括 AMQP、MQTT 和 OpenWire 等。 2、有什么用? 可靠性:ActiveMQ 提供了消息持久性和事务支持,确保消

Linux_kernel驱动开发11

一、改回nfs方式挂载根文件系统         在产品将要上线之前,需要制作不同类型格式的根文件系统         在产品研发阶段,我们还是需要使用nfs的方式挂载根文件系统         优点:可以直接在上位机中修改文件系统内容,延长EMMC的寿命         【1】重启上位机nfs服务         sudo service nfs-kernel-server resta

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip

深入理解数据库的 4NF:多值依赖与消除数据异常

在数据库设计中, "范式" 是一个常常被提到的重要概念。许多初学者在学习数据库设计时,经常听到第一范式(1NF)、第二范式(2NF)、第三范式(3NF)以及 BCNF(Boyce-Codd范式)。这些范式都旨在通过消除数据冗余和异常来优化数据库结构。然而,当我们谈到 4NF(第四范式)时,事情变得更加复杂。本文将带你深入了解 多值依赖 和 4NF,帮助你在数据库设计中消除更高级别的异常。 什么是

STM32(十一):ADC数模转换器实验

AD单通道: 1.RCC开启GPIO和ADC时钟。配置ADCCLK分频器。 2.配置GPIO,把GPIO配置成模拟输入的模式。 3.配置多路开关,把左面通道接入到右面规则组列表里。 4.配置ADC转换器, 包括AD转换器和AD数据寄存器。单次转换,连续转换;扫描、非扫描;有几个通道,触发源是什么,数据对齐是左对齐还是右对齐。 5.ADC_CMD 开启ADC。 void RCC_AD

FreeRTOS-基本介绍和移植STM32

FreeRTOS-基本介绍和STM32移植 一、裸机开发和操作系统开发介绍二、任务调度和任务状态介绍2.1 任务调度2.1.1 抢占式调度2.1.2 时间片调度 2.2 任务状态 三、FreeRTOS源码和移植STM323.1 FreeRTOS源码3.2 FreeRTOS移植STM323.2.1 代码移植3.2.2 时钟中断配置 一、裸机开发和操作系统开发介绍 裸机:前后台系

企业安全之WiFi篇

很多的公司都没有安全团队,只有运维来负责整个公司的安全,从而安全问题也大打折扣。我最近一直在给各个公司做安全检测,就把自己的心得写下来,有什么不足之处还望补充。 0×01  无线安全 很多的公司都有不怎么注重公司的无线电安全,有钱的公司买设备,没钱的公司搞人力。但是人的技术在好,没有设备的辅助,人力在牛逼也没有个卵用。一个好的路由器、交换机、IDS就像你装备了 无尽、狂徒、杀人书一

HNU-2023电路与电子学-实验3

写在前面: 一、实验目的 1.了解简易模型机的内部结构和工作原理。 2.分析模型机的功能,设计 8 重 3-1 多路复用器。 3.分析模型机的功能,设计 8 重 2-1 多路复用器。 4.分析模型机的工作原理,设计模型机控制信号产生逻辑。 二、实验内容 1.用 VERILOG 语言设计模型机的 8 重 3-1 多路复用器; 2.用 VERILOG 语言设计模型机的 8 重 2-1 多

[环境配置]ubuntu20.04安装后wifi有图标但是搜不到热点解决方法

最近刚入手一台主机,暗影精灵8plus电竞主机,安装ubuntu后wifi怎么都搜不到热点,前后重装系统6次才算解决问题。这个心酸历程只有搞技术人才明白。下面介绍我解决过程。 首先主机到手后是个windows10系统,我用无线网连接了一下,可以正常上网,说明主机有无限网卡且正常。然后我就直接开始安装Ubuntu20.04了,安装成功后发现wifi有图标但是搜不到热点,我想是不是无线网卡驱动有没有

PHP7扩展开发之依赖其他扩展

前言 有的时候,我们的扩展要依赖其他扩展。比如,我们PHP的mysqli扩展就依赖mysqlnd扩展。这中情况下,我们怎么使用其他扩展呢?这个就是本文讲述的内容。 我们新建立一个扩展,名字叫 demo_dep , 依赖之前的say扩展。 在demo_dep扩展中,我们实现demo_say方法。这个方法调用say扩展的say方法。 代码 基础代码 确保say扩展的头文件正确安装到了php