交叉编译hostap时遇到 fatal error: netlink/genl/genl.h: No such file or directory 17

在x86-64系统上进行arm64的交叉编译hostapd时遇到genl.h缺失的问题,尽管已安装libnl-3-dev和libnl-genl-3-dev。通过在.config中添加头文件路径并调整CFLAGS和LIBS变量,成功解决了编译错误,最终生成了适用于ARMaarch64架构的动态链接库。

我的系统是x86-64的,iMX8的运行环境是arm64,所以需要进行交叉编译

~/Mason/lib/bw/hostapd-2.9/hostapd$ make
../src/drivers/driver_nl80211.c:17:10: fatal error: netlink/genl/genl.h: No such file or directory
   17 | #include <netlink/genl/genl.h>
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
Makefile:1294: recipe for target '../src/drivers/driver_nl80211.o' failed

 看见有的博主说安装libnl-3-dev和libnl-genl-3-dev可以解决问题,但是我的系统里已经安装了这两个库,系统提示不需要安装.

 因为genl.h 是安装在libnl-3-dev:/usr/include/libnl3/netlink/genl/genl. h

然后突发奇想,就在.config 文件里面增加了这个路径。问题就可以完美解决了

CONFIG_LIBNL32=y

+CFLAGS += -I /usr/include/libnl3
+LIBS += -L /usr/lib

CFLAGS += -I /home/q/Mason/lib/mm/libnl-3.2.25/__install/include/libnl3
LIBS += -L /home/q/Mason/lib/mm/libnl-3.2.25/__install/lib

CFLAGS += -I /home/q/Mason/lib/bw/openssl-1.1.1a/__install/include
LIBS += -L

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值