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库的移植已经完成。

相关推荐
江梦寻2 分钟前
思科模拟器路由器配置实验
开发语言·网络·网络协议·学习·计算机网络
scoone6 分钟前
ssh登陆服务器后支持Tab键命令补全
linux·shell
Koi慢热1 小时前
信息收集合集
网络·安全·web安全·网络安全
运维佬1 小时前
CentOS 9 配置网卡
linux·centos
陌夏微秋1 小时前
51单片机基础02 动态数码管显示-并串转换
arm开发·单片机·嵌入式硬件·51单片机·硬件工程·信息与通信·信号处理
轩轩曲觞阁2 小时前
Linux网络——网络初识
linux·网络
2401_840192272 小时前
python基础大杂烩
linux·开发语言·python
摘星星ʕ•̫͡•ʔ2 小时前
计算机网络 第二章:物理层
网络·计算机网络
linnux领域2 小时前
使用ensp配置单臂路由、静态路由,实现PC互相通信。
网络
hgdlip2 小时前
本机ip地址和网络ip地址一样吗
网络·网络协议·tcp/ip·网络ip地址·本机ip地址