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

相关推荐
松涛和鸣几秒前
72、IMX6ULL驱动实战:设备树(DTS/DTB)+ GPIO子系统+Platform总线
linux·服务器·arm开发·数据库·单片机
野指针YZZ6 分钟前
一键配置RK3588网络与SSH远程连接
网络·ssh·rk3588
简单中的复杂26 分钟前
【避坑指南】RK3576 Linux SDK 编译:解决 Buildroot 卡死在 host-gcc-final 的终极方案
linux·嵌入式硬件
迎仔31 分钟前
10-网络安全监控与事件响应:数字世界的智能监控与应急系统
网络·安全·web安全
wVelpro1 小时前
如何在Pycharm 2025.3 版本实现虚拟环境“Make available to all projects”
linux·ide·pycharm
上海合宙LuatOS1 小时前
LuatOS核心库API——【audio 】
java·网络·单片机·嵌入式硬件·物联网·音视频·硬件工程
程序员老舅1 小时前
C++高并发精髓:无锁队列深度解析
linux·c++·内存管理·c/c++·原子操作·无锁队列
雨中风华2 小时前
Linux, macOS系统实现远程目录访问(等同于windows平台xFsRedir软件的目录重定向)
linux·windows·macos
深圳市恒星物联科技有限公司2 小时前
水质流量监测仪:复合指标监测的管网智能感知设备
大数据·网络·人工智能
爱吃生蚝的于勒2 小时前
【Linux】进程信号之捕捉(三)
linux·运维·服务器·c语言·数据结构·c++·学习