家里面的路由器一直在使用非常古老的小米路由器Pro 3,这么多年都没有换过,原因就是因为我已经使用OpenWrt替换了原厂的操作系统,并且在github上构建了自己的Github Action,每周六早上自行编译操作系统,并且通过SSH上传到路由器上,自行刷机。

过去几年,这个机制运转很正常,但大约两三个月前,却突然中断了,每周六早上收到的都是Github Actions failed的邮件通知。但由于工作繁忙,也一直没有时间深度挖掘这事情。

上周末有点儿时间,决定认真研究一下,看了单线程的编译日志,发现问题出现在NodeJS的编译上。小米路由器Pro 3采用的是MT7621,但NodeJS现在已经停止支持ramips平台了。所以造成了这个问题。

从配置文件中仔细看了一上,发现我选择的组件中并没有NodeJS依赖,那就直接不再选择NodeJS编译就可以了呗?结果发现根本无法取消选择,在.config文件中将所有的含有Node字样的组件都替换为"N"也不行。后来看了一下,NodeJS会根据平台SOFT_FLOAT选择是否编译,那简单了,直接到NodeJS的Makefile中移除这个就可以了。

下面就是我的解决方案:

sed -i 's/DEPENDS:=@(HAS_FPU||KERNEL_MIPS_FPU_EMULATOR||SOFT_FLOAT)/DEPENDS:=@(HAS_FPU||KERNEL_MIPS_FPU_EMULATOR)/g' ./openwrt/feeds/packages/lang/node/Makefile

机器学习与大数据、数据挖掘之间有什么关系?

2018-01-11 by 开心就好

太多的业界术语,这三者之间是不是换汤不换药呢?

read more

你看好比特币吗?

2018-01-08 by 开心就好

刚看到一个新闻,海尔股票暴涨,原因是因为其智能冰箱已经支持挖矿。好象世界又进入到十年一轮的众人皆狂的时代开 …

read more

网站速度如何?

2018-01-06 by 开心就好

测试一下。

read more