【破解教程】极路由器进阶教程:搭建交叉编译在路由器中运行自己的程序
本文最后更新于:2022年12月31日 下午
极路由器进阶教程:搭建交叉编译在路由器中运行自己的程序
准备工作
上一篇文章已经讲解了极路由器如何获取权限,永久开放ssh的22端口,并知道了极路由器的架构为MIPS架构。通过已知内容,我们开始搭建交叉编译工具链。
软件:
Ubuntu或者其他Linux系统(我这里使用的是基于WSL的Ubuntu20.4)
MIPS编译工具链一套(包含g++与gcc)
注:非常坑的是,极路由内的系统Hiwifi是基于openwrt的二次开发,普通的mips-linux-gun的交叉编译链生成的ELF执行文件在该系统下不可执行,并不被支持。所以要费一番功夫去手动编译openwrt系统然后手动提取,或者从网上找openwrt的系统工具包提取。
硬件:
电脑一台
被破解的极路由器一台
开始搭建
首先在ubuntu上安装一些东西
1 |
|
获取Openwrt的源代码
1 |
|
编译源代码,默认配置即可,不需要勾选什么
1 |
|
编译,耗时特别长,可以忙些别的事情
1 |
|
一切无错的情况下,会在staging_dir目录下列出三个目录:
host
target-mips_34kc_uClibc-0.9.33.2
toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2
以上的安装过程时间太长,步骤太多。为此我直接提取出来toolchain文件,你们下载解压后,从这里开始执行一下步骤即可
提取版toolchain文件的下载地址:点我下载,因为在github上下载较慢,文件也不大,请耐心等待
将toolchain加到PATH里面
1 |
|
按 i 键开始添加内容,将下面的内容添加到最后面。
1 |
|
以上工作做好之后测试一下下,如下即为正常。
1 |
|
测试
写一个最简单的hello world,命名test.cpp
1 |
|
然后使用交叉编译一下
1 |
|
在该文件目录下就会生成一个可执行文件test
将该文件通过Sftp传入到极路由器中运行
1 |
|
然后就能看到执行结果了。如图:
PS: 不会用Sftp看我之前的博文。
下一篇文章,讲一下交叉编译tcpdump这个抓包工具。