萝卜大侠 发表于 2022-2-6 14:59:54

AX1800开源固件

我将在这个帖子更新AX1800开源固件的进度。源码地址 https://github.com/gl-inet/gl-infra-builder
目前关键问题已经得到解决,集成glinet的页面还需要一段时间

下面是我在ubuntu 20.4上编译AX1800纯净版固件的完整过程
1. 安装编译openwrt必须的依赖软件包
sudo apt install build-essential libncurses5-dev gawk git libssl-dev gettext zlib1g-dev swig unzip time rsync python3 python3-setuptools python3-yaml

2. 克隆代码并执行编译(注意make -j17命令,我的电脑是16核的,所以是17,原则上电脑核心数加1可以最大效率的执行编译,请根据实际情况选择)git clone https://github.com/gl-inet/gl-infra-builder.git
cd gl-infra-builder
python3 setup.py -c configs/config-wlan-ap.yml
cd wlan-ap/openwrt
./scripts/gen_config.py target_wlan_ap-gl-ax1800 luci
make -j17
3. 编译好的固件在bin/targets/ipq807x/ipq60xx/目录下


4. 固件升级(以下步骤需要一定的技术基础,纯小白勿入)
升级开源固件的流程比较特殊,分以下几种情况
情况一:当前固件是glinet的发布的3.X固件,需要升级到编译的开源固件
             a. 直接在glinet的web页面上传openwrt-ipq807x-glinet_ax1800-squashfs-nand-factory.img的文件,上传完毕后页面会有警告,请先忽略,将所有保留配置的选项全部关掉,然后点击升级
             b. 升级完毕后,页面不会自动跳转,因为这个时候网关地址已经变成了192.168.1.1
             c. 直接在浏览器地址栏输入192.168.1.1访问luci页面

情况二:当前固件是按照上面流程编译的开源固件,需要升级新编译的开源固件
             a. 在luci升级页面直接升级,选择的上传文件为 openwrt-ipq807x-glinet_ax1800-squashfs-sysupgrade.tar,注意文件名的变化


情况三:当前固件是按照上面流程编译的开源固件,需要升级回glinet发布的3.X固件
             只能使用uboot升级回glinet的固件,uboot升级方式参考这个链接,暂时是英文的,先凑合一下,如果有必要我翻译个中文教程
   情况四:使用uboot升级上面流程编译的开源固件
            参考情况三的方式进入uboot,选择openwrt-ipq807x-glinet_ax1800-squashfs-nand-factory.img 文件升级
         
升级完开源固件后界面如下:




扩展:1. 怎样在编译目录中加入自己需要的软件包源码
在源码集成环境中,所有非openwrt内置的软件包都是以feed的形式引入,统一放在gl-infra-builder/feed目录下
gl-infra-builder/feed/glinet就是我们内置的本地feed目录,你也可以建立其他feed目录,但是注意在配置文件引用,如果你不熟悉,还是建议直接使用gline本地feed目录
gl-infra-builder/feed/glinet目录下已经有了一个helloword的示例,下面演示如何在配置文件中选择helloWord这个软件包
a. 打开profiles/luci.yml,在packages条目下添加helloword的选项,编辑配置文件时,需要特别注意不要随意修改空格数量,也不要用tab键替换

b. 重新执行以下命令
cd wlan-ap/openwrt
./scripts/gen_config.py target_wlan_ap-gl-ax1800 luci
make -j17c. 同理,如果需要添加其他软件包也可以这么操作



不望月的狼人 发表于 2022-2-8 11:03:51

期待,目前可以自己编译测试了么?

不望月的狼人 发表于 2022-2-8 14:02:28


尝试编译,得到如下错误,烦请看看是啥原因。操作步骤:
python3 setup.py -c config-wlan-ap.yml
cd wlan-ap/openwrt
./scripts/gen_config.py target_wlan_ap-gl-ax1800
make -j 8 V=s





萝卜大侠 发表于 2022-2-8 14:21:23

不望月的狼人 发表于 2022-2-8 14:02
尝试编译,得到如下错误,烦请看看是啥原因。操作步骤:
python3 setup.py -c config-wlan-ap.yml
cd wlan ...

我现在在纯净环境下编译看一下呢

不望月的狼人 发表于 2022-2-8 14:22:15

萝卜大侠 发表于 2022-2-8 14:21
我现在在纯净环境下编译看一下呢

好的,谢谢!

萝卜大侠 发表于 2022-2-8 15:27:47

不望月的狼人 发表于 2022-2-8 14:22
好的,谢谢!

在纯净环境下编译,遇到了和你一样的问题,原因是wpad的配置我们是在glinet_common中添加的,所以单独使用target_wlan_ap-gl-ax1800会遇到错误。
目前问题已解决,我在github上刚刚有一次提交,你重新拉一下,然后重新执行./scripts/gen_config.py target_wlan_ap-gl-ax1800命令即可生成正确配置

不望月的狼人 发表于 2022-2-8 15:33:18

萝卜大侠 发表于 2022-2-8 15:27
在纯净环境下编译,遇到了和你一样的问题,原因是wpad的配置我们是在glinet_common中添加的,所以单独使 ...

好的,谢谢,我重新试试!

不望月的狼人 发表于 2022-2-9 11:16:04

本帖最后由 不望月的狼人 于 2022-2-10 18:00 编辑

萝卜大侠 发表于 2022-2-8 15:27
在纯净环境下编译,遇到了和你一样的问题,原因是wpad的配置我们是在glinet_common中添加的,所以单独使 ...
更新了仓库代码,重新编译后可以正常编译,也生成了对应的bin镜像和tar包,但是通过uboot刷入失败,通过系统的自带升级后系统无法成功进入。

萝卜大侠 发表于 2022-2-9 11:49:37

不望月的狼人 发表于 2022-2-9 11:16
更新了仓库代码,重新编译后可以正常编译,也生成了对应的bin镜像和tar包,但是通过uboot刷入失败,通过 ...

下午我更新一下帖子哈!
刷入固件的步骤应该是有些特殊的

不望月的狼人 发表于 2022-2-9 11:52:31

萝卜大侠 发表于 2022-2-9 11:49
下午我更新一下帖子哈!
刷入固件的步骤应该是有些特殊的

好的,谢谢!:lol

萝卜大侠 发表于 2022-2-9 16:37:12

不望月的狼人 发表于 2022-2-9 11:16
更新了仓库代码,重新编译后可以正常编译,也生成了对应的bin镜像和tar包,但是通过uboot刷入失败,通过 ...

哈喽!我更新了帖子,你在系统中升级后无法访问界面是因为没加LUCI,现在你需要注意以下几点
1. 先通过uboot升级到glinet的出厂固件
2. 我在github提交了一个luci的profile,你可以先拉下更新,为了避免重新编译,你可以执行下面命令,进行快速应用(注意生成配置的时候多了个luci的配置)
cd gl-infra-builder
git pull
cp profiles/luci.yml wlan-ap/profiles/
cd wlan-ap/openwrt/
./scripts/gen_config.py target_wlan_ap-gl-ax1800 luci
3. 按照帖子中的刷机流程更新固件,注意我刚刚发现一个已知问题,在帖子中有提及,目前正在修复中

不望月的狼人 发表于 2022-2-9 16:44:18

萝卜大侠 发表于 2022-2-9 16:37
哈喽!我更新了帖子,你在系统中升级后无法访问界面是因为没加LUCI,现在你需要注意以下几点
1. 先通过ubo ...

好的,谢谢,我先尝试一下编译一下固件,下班回去后尝试刷机。:lol

萝卜大侠 发表于 2022-2-9 16:49:48

不望月的狼人 发表于 2022-2-9 16:44
好的,谢谢,我先尝试一下编译一下固件,下班回去后尝试刷机。

这个论坛软件神奇了,我还以为刚给你的回复丢失了,正在一边重新编辑一边骂discuz的开发者,怎么这会又看到了:o

不望月的狼人 发表于 2022-2-9 16:52:46

萝卜大侠 发表于 2022-2-9 16:49
这个论坛软件神奇了,我还以为刚给你的回复丢失了,正在一边重新编辑一边骂discuz的开发者,怎么这会又看 ...

因为你回复的正好是在第二页:lol

不望月的狼人 发表于 2022-2-9 17:16:52

萝卜大侠 发表于 2022-2-9 16:49
这个论坛软件神奇了,我还以为刚给你的回复丢失了,正在一边重新编辑一边骂discuz的开发者,怎么这会又看 ...
对了,还发现一个3.208 版本固件问题,使用一段时间会有几率无法访问路由器后台,查看lighttpd的错误日志发现大量 (connections.c.1034) connection closed - read failed:Function not implemented 38 这个错误,强杀lighttpd进程后恢复

萝卜大侠 发表于 2022-2-9 18:02:55

不望月的狼人 发表于 2022-2-9 16:44
好的,谢谢,我先尝试一下编译一下固件,下班回去后尝试刷机。

诶呦,刚刚那个已知问题是我犯了个低级错误,竟然把dnsmasq给取消选择了,麻烦你再拉一下吧{:3_61:}

萝卜大侠 发表于 2022-2-9 18:04:48

不望月的狼人 发表于 2022-2-9 17:16
对了,还发现一个3.208 版本固件问题,使用一段时间会有几率无法访问路由器后台,查看lighttpd的错误日志 ...

这个问题我先让人复现一下,先复现才好修复,目前就收到你一个人的反馈,你有什么特殊操作吗?

不望月的狼人 发表于 2022-2-9 21:02:04

萝卜大侠 发表于 2022-2-9 18:02
诶呦,刚刚那个已知问题是我犯了个低级错误,竟然把dnsmasq给取消选择了,麻烦你再拉一下吧 ...


成功刷入,目前看起来工作正常,感谢,可以考虑自己加一些插件进去了!!:lol:handshake

不望月的狼人 发表于 2022-2-9 21:07:41

萝卜大侠 发表于 2022-2-9 18:04
这个问题我先让人复现一下,先复现才好修复,目前就收到你一个人的反馈,你有什么特殊操作吗? ...

也没做啥特殊的操作,就是映射了几个端口,装了个adguardhome,改了个ipv6,其他没动

萝卜大侠 发表于 2022-2-10 15:41:22

不望月的狼人 发表于 2022-2-9 21:02
成功刷入,目前看起来工作正常,感谢,可以考虑自己加一些插件进去了!!
...

现在支持uboot刷开源固件啦,刷入方式我已经更新了帖子。
由于打了几个补丁,需要拉取最新的源码,然后setup并重新编译
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: AX1800开源固件