Openwrt

Posted s3320

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Openwrt相关的知识,希望对你有一定的参考价值。

ubuntu环境

?? 点击openwrt查询自己系统需要安装的那些
技术图片

比如我的系统是ubuntu 18.04,选择的就是18.04
技术图片

查询设备CPU信息

?? 点击openwrt查询自己路由器对应的CPU信息
技术图片

准备OpenWrt环境

  • 下载openwrt源码
    这个过程可能会有点漫长,可以将github上的资源搬到码云,然后从码云下载,据说速度很快,详细的教程百度搜一下就有
git clone https://git.openwrt.org/openwrt/openwrt.git
  • 选择自己需要的分支
cd openwrt/

# lede
git checkout lede-17.01

# openwrt
git checkout openwrt-18.06
  • 编译检查
    在安装Ubuntu环境的时候,我们已经安装了一部分需要的库,在这个地方如果报错,只需要根据报错的信息安装对应库就好了
make defconfig && make prereq
  • 配置编译信息
    在第二部我们已经查到自己路由信息,在这个地方只需要按照查询的信息选择就好
make menuconfig

技术图片

关于一些选项的说明,来自于《OpenWrt智能路由系统开发 跟hoowa学智能路由》
技术图片
技术图片

如果只是生成SDK开发环境,勾选比较少,我所勾选的是

Target System (Atheros AR7xxx/AR9xxx)
Target Profile (GL MIFI)
Advanced configuration options
Build the LEDE SDK
  • 编译
    使用make命令即可完成编译。不显示信息,直接编译
make
  • 采用多核编译,参数-j 后面跟随线程的数量
make -j 6
  • 显示全部信息,并且采用多核编译
make V=99 -j 2
  • 提取编译文件
固件以sysupgrade.bin结尾的文件
SDK openwrt-sdk-ar71xx-generic_gcc-7.3.0_musl.Linux-x86_64.tar.xz
  • 清理编译
    这个地方请谨慎操作,一旦操作错,可能会让你编译了几个小时的东西瞬间爆炸

  • 清理已编译好的固件、软件包
make clean
  • 清理掉已编译好的交叉编译工具、固件、软件包
make dirclean
  • 清理掉所有内容
make distclean

SDK 配置

使用make menuconfig配置"Global build settings"中"Cryptographically sign package lists",这一项默认勾选,需要取消勾选,不然make时会出错。

Feeds源

  • 查看Feeds下载地址
cat feed.conf.default
  • 下载全部Feeds源并安装到源代码中
./scripts/feeds update -a
./scripts/feeds install -a

以上是关于Openwrt的主要内容,如果未能解决你的问题,请参考以下文章

如何编译OpenWrt

Openwrt添加rtl8139 驱动

来自 OpenwRT 的 Luci lua 代码解释

怎样自定义openwrt登陆界面

如何编译OpenWrt

openwrt编译x86镜像