OpenWrt从下载到编译 -- 斐讯K2路由器

openwrt 专栏收录该内容
1 篇文章 0 订阅

1. OpenWrt简介

下面来看一下百度百科对OpenWrt的解释:

OpenWrt 可以被描述为一个嵌入式的 Linux 发行版,(主流路由器固件有
dd-wrt,tomato,openwrt三类)而不是试图建立一个单一的、静态的系统。OpenWrt的包管理提供了一个完全可写的文件系统,从应用程序供应商提供的选择和配置,并允许您自定义的设备,以适应任何应用程序。
对于开发人员,OpenWrt
是使用框架来构建应用程序,而无需建立一个完整的固件来支持;对于用户来说,这意味着其拥有完全定制的能力,可以用前所未有的方式使用该设备。------
OpenWrt百度百科

2. 编译环境搭建

wiki上官方步骤:点击进入
我采用的编译环境是Ubuntu14.04 LTS版的(注意:2020年以后,现在较新的openwrt版本需要Ubuntu 18.04以上的版本才可以编译成功,但是搭建流程是一样的)。
下面是为大家整理的编译依赖环境的安装命令:

sudo apt-get install build-essential subversion git-core libncurses5-dev zlib1g-dev gawk flex quilt libssl-dev xsltproc libxml-parser-perl mercurial bzr ecj cvs unzip
sudo apt-get install build-essential subversion libncurses5-dev zlib1g-dev gawk gcc-multilib flex git-core gettext libssl-dev

用上面的两条命令即可完成编译环境的搭建。

3. 源码下载

我们这里的源码一律采用主干最新代码,下载地址:
大家可以去GitHub上下载源码:点击下载
GitHub下载速度慢可以去Gitee上下载,这个速度比较快:Gitee
也可以通过git将源码下载到本地(在这儿推荐这种方法),这样的话方便更新。

# 新建一个文件夹
$ mkdir openwrt
# 进入这个文件夹
$ cd openwrt
# 下载主干源码
$ git clone git://github.com/openwrt/openwrt.git
# 若GitHub下载慢,可以用Gitee的资源
# git clone https://codechina.csdn.net/mirrors/openwrt/openwrt.git
# 等待一段时间 最新源码下载完成
# 进入到源码下载目录
$ cd openwrt

这时候,源码下载完毕。

4. 编译之前的准备

  1. 更新资源

    ./scripts/feeds update -a
    ./scripts/feeds install -a
    

    若更新资源失败,则进入第2步:替换修改,若更新成功则跳过第2步,直接进入第3步:执行make menuconfig

  2. 替换修改
    熟悉编译流程的同学们知道,下载完成源码后,就应该更执行和更新和安装命令。但是这个时候往往更新会失败,为什么呢?— 原因就是一些更新源已经更换为git地址了,但是feeds.conf.default文件采用的还是https/http的地址。我们将这个文件里面的地址修改一下即可。
    注意:feeds.conf.default文件就在下载的源码目录下,可以尝试先更新和安装,如果失败则执行这一步修改。

    # 修改feeds.conf.default文件 
    $ vi feeds.conf.default
    # 通过命令将https更换为git
    :%s/https/git/g
    # 保存文件
    :wq!
    

    下图为修改完成后的效果:
    修改feeds.conf.default文件后效果图
    注意:如上图所示,有些git地址被注释掉了,我们一般情况下不用去修改。
    修改完后则执行:

    ./scripts/feeds update -a
    ./scripts/feeds install -a
    
  3. 执行make menuconfig
    终端下执行 make menuconfig

5. make menuconfig配置

执行make menuconfig后,弹出如下界面:
这里写图片描述

通过文本对话框进行选项配置,最主要的配置项有:

Target system   (目标系统类型,即路由器CPU架构)

Subtarget       (子目标,即路由器芯片型号)

Target Profile  (目标文件, 即路由器型号)

LuCI            (LuCI界面设置)

基本配置:
我采用的是斐讯K2路由器,网上百度CPU型号为MT7620,芯片架构为MIPS,路由器型号为PSG1208,那么我的基本配置就为:

Target system -> MediaTek Ralink MIPS

Subtarget -> MT7620 based boards

Target Profile -> Phicomm PSG1208

LuCI配置:
LuCI是一个界面,即刷完路由器后,我们需要登陆“192.168.1.1”来设置路由器参数的界面。

LuCI->
	1. Collections->
		<*> luci-ssl-openssl
	2. Modules->
		Translations->
			<*>English (en)
			<*>Chinese (zh-cn)

配置完以上信息后,OpenWrt最基本的一些配置已经完成。

6. 开始编译

执行make V=s进行编译。
或者执行 make -j2 V=s进行编译。(-j2为两个线程,-j4为四个线程,具体看自己的电脑是几线程的,当然线程越多,编译越快。)
注意:第一次编译过程中会下载工具包,所下载的包在dl文件夹下,因此比较慢,耐心等待即可。

7. 编译完成

所生成的文件在openwrt/bin/targets/ramips/mt7620目录下,其中openwrt-ramips-mt7620-psg1208-squashfs-sysupgrade.bin为编译出来的固件。通过breed刷入K2路由器即可。

8. 其它

假如编译成功,我们可以尝试通过修改make menuconfig将其它软件包编译到固件中。
至此,结束。

  • 2
    点赞
  • 2
    评论
  • 9
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值