编译openwrt报错Please port gnulib freadahead.c to your platform

问题

TR7628开发板厂商给的openwrt sdk在Ubuntu 20.04下编译提示:

freadahead.c:91:3: error: #error "Please port gnulib freadahead.c to your platform! Look at the definition of fflush, fread, ungetc on your system, then report this to bug-gnulib."

分析

make加参数 V=s打印详细信息,查看出错前进入的目录:
error info
得知是编译主机脚手架工具m4 lib出的问题,搜索报错信息,在stackoverflow上找到相关问题port gnulib fseeko.c to your platform while building the Alexa Auto SDK on Ubuntu 20.04, 得知是GNU m4库和glibc库的互操作兼容性问题,在GNU m4 1.4.19版本已经修复.

解决办法

因此一种解决办法就是更换库版本;下面另一个回答给出另一种解决办法替换宏定义:

cd build_dir/host/m4-1.4.17/
sed -i 's/IO_ftrylockfile/IO_EOF_SEEN/' lib/*.c
echo "#define _IO_IN_BACKUP 0x100" >> lib/stdio-impl.h

参考文章

  1. 编译遇到 Please port gnulib freadahead.c to your platform 的问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值