Arch下编译MTK7288 OpenWrt开发版
前几日在爱板网申请了一个路由器开发板,我本来都没有报什么期望。没想到有天有个老哥加我核对地址,说我通过了。要求很低就是一个月发俩篇文章,我一天可以水7篇,这种要求简直就是小儿科。但是恰逢中秋节我也一直没有动手,正好我连着上了7天课。今天是星期五,是我觉得最放松的时间。我昨天也里从Github上面拉了一个库,也是MTK7288的库,我随便改了搞了搞就准备编译,我还是太天真 ~因为种种原因也没有编译成功。不过我觉得很正常啊,有没有。哪有一次就可以编译成功的。简直就离谱好吧。
我找了一下资料,还是回归了官方,害。骄傲的我还不用,还不是用了,嘤嘤嘤。然后这个官方的资料比较狗,就是甩了一个百度云盘,里面有两个压缩文件,我然后就下载下来了。两个文件有10个G这么多,吓死宝宝了。不慌,先复制到电脑的上面。两个文件第一个可以解压,第二个就是报错解压不了。我就有点难受,我还是解压了,尝试解压。接着就是找到了一个虚拟机安装一下,看着我的C盘刷刷的掉。心疼,想哭!!!!呜呜呜,但是还得试试。我就试试,然后导入一个新的虚拟机,没想到成功了。开心到模糊,我的目的单纯就是提取官方的编译文件,打开以后。里面直接就有一个目录,直接复制这个文件夹导出。导入我的arch系统。以下不是初始状态,我已经更新过了,所以找个文件夹已经快一个G的大小了。
怕丢稿,不停的保存
可以看到是有700多MB了
我们稍微看一下目录,是标准的Linux开发目录,有机会给大家解读
从README里面找到了git的提交记录,有兴趣的可以看
./scripts/feeds update -a
feeds.conf / feeds.conf.default
./scripts/feeds install -a
一般来说是要在联网情况下执行一下这两个命令的
但是我在真机上面执行完,连menuconfig都打不开,emmmmm
我找了半天bug更多了,我后来是在虚拟机里面编译的
这个是升级的一个截图
这个是打开编译菜单的命令,可以加V=99
或V=s参数,看到更多的中间过程
这个是编译的菜单
具体的页面功能就自己看吧
properties mtk功能选项
Network,涉及到网络的app(ssh,vpn配置等)
bash功能,加入
zsh也加上,就好这口
这个是在实体机里面编译失败了~
链接:https://pan.baidu.com/s/1fE5BrAIC8I3tjR1i6tv6cw
提取码: n86v
虚拟机的用户名luke 密码:luke
虚拟机版本 14.1.1
自己下载后打开会看到要填这些东西的地方
登录页面->密码luke
虚拟机内用不了鼠标设置这个地方
/home/luke/MtkOpenwrt,这个是源码的地址就是一进入桌面就可以看见.
终端 ls -> cd MTK(Tab摁) 进入
然后ls 会进入然后显示里面的所有文件,此时这个地方有坑.我说一下.
如果直接make menuconfig 配置好以后 ------->make V=s
会报错
这么个错误
需要make kernel_menuconfig V=s进入内核的编译目录
就是再按照下面这样做
makekernel_menuconfig->
RalinkModule --->
[*]WiFi Driver Support --->
[] WiFi packet forwarding
把WiFi packet forwarding 的*去掉 重新编译
然后执行 make menuconfig 配置自己的固件 make V=s 或V=99就是输出中间过程,建议打开.一事好debug二是可以看编译的过程,是不是卡住了什么的.
然后里面有一个默认配置,就是基本的路由功能.
这个HI-LINK就是开发板的ap
密码是12345678
密码是12345678
密码是12345678
我翻了半天源码才找到,当然可以.在源码里面自定义.我们后面再说
这个是编译成功在一下这个目录
编译结果保存在bin/ramips/目录下
生成固件名:openwrt-ramips-mt7628-mt7628-squashfs-sysupgrade.bin
编译成功,并且拉到了win机器.
很眼瞎,我拉错了