AX3600编译OpenWRT报错uci-firewall不存在

之前的自己编译的AX3600固件一直好好地,最近心血来潮想更新一下源码编译一个新的固件,结果碰到了疑难杂症,从开始更新源码开始就一直有如下提示。

项目源码地址:https://github.com/robimarko/openwrt/tree/IPQ807x-5.10-backports

makefile 'package/feeds/luci/luci-app-firewall/makefile' has a dependency on 'uci-firewall', which does not exist

然后到了编译的时候果然报错,找不到依赖的uci-firewall。上网搜了半天也没人提到这个问题,去作者源码找也没人提到这玩意,看来应该就是最新的openwrt源码问题了。

先尝试不带luci编译了一次,顺利通过了,看来问题就是luci的源码问题。想起来上次编译的另外一个版本的固件是没有这个问题,跑过去打开旧的文件夹,打开同样的文件 package/feeds/luci/luci-app-firewall/makefile

对比两个的区别,新的是这样子

新的Make文件

#
Copyright (C) 2008-2014 The LuCI Team [email protected]
#
This is free software, licensed under the Apache License, Version 2.0 .
#
include $(TOPDIR)/rules.mk
LUCI_TITLE:=Firewall and Portforwarding application
LUCI_DEPENDS:=+uci-firewall
PKG_LICENSE:=Apache-2.0
include ../../luci.mk
call BuildPackage - OpenWrt buildroot signature

旧的Make文件

#
Copyright (C) 2008-2014 The LuCI Team [email protected]
#
This is free software, licensed under the Apache License, Version 2.0 .
#
include $(TOPDIR)/rules.mk
LUCI_TITLE:=Firewall and Portforwarding application
LUCI_DEPENDS:=+firewall
PKG_LICENSE:=Apache-2.0
include ../../luci.mk
call BuildPackage - OpenWrt buildroot signature

对比了下,难道就是这么简单,新版源码里面的 LUCI_DEPENDS 改成uci-firewall,其他的luci-app-firewall还是调用旧名字firewall,所以报错了?

试着改了一下新的Make文件,从uci-firewall改成firewall,然后再运行

#./scripts/feeds update -a && ./scripts/feeds install -a

这次没有提示找不到uci-firewall了,试着重新进行编译,果然通过了。

Leave a Reply

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注