OpenWrt Club OpenWrt Club
  • 首页
  • OpenWrt系统
  • OpenWrt插件
  • OpenWrt固件
  • 友人帐
  • OpneWrt 论坛
  • 注册
  • 登录
首页 › OpenWrt系统 › 树莓派Lean大雕OpenWrt固件之编译篇

树莓派Lean大雕OpenWrt固件之编译篇

萝卜
3年前OpenWrt系统阅读 6,391

文章前言

折腾树莓派一直是我一天的开始,编译OpenWrt是我每天的梦魇,这段时间一直想编译一个适用于树莓派的OpenWrt路由系统,官方几乎默认就可以编译,但是插件较少,所以开始选择移植Lean大神的源码,期间问题也是多多,不过经过Lean大神和eSir的千万次的问之后终于安心使用了。

文章发布前Lean(大雕)的固件除了Docker 初始化脚本以外已经默认适配了树莓派的所有型号,相信很多人已经编译使用了。我这里只做个笔记,如何编译和刷入树莓派。

项目地址:https://github.com/coolsnowwolf/lede

编译环境

如何部署编译环境你可以参考以下几篇文章:

如何编译一个属于自己的OpenWrt固件
树莓派移植Lean插件到OpenWrt官方源码里

有必要在开始之前说一下如何对配置界面进行选中选择,在menuconfig界面方向键来控制上下左右,

  • 方向键上下左右选择菜单
  • 回车进入选择菜单,右边标有箭头的为多选项可以回车进入。
  • 字母y 为选中并编译进固件
  • 字母m为选中但不编译进固件
  • 字母N代表取消选择。

配置机型

这里依Raspberry Pi 3B+的型号为延时,其他机型只有这里不同,其他都一样。

在终端输入一下命令:

#进入源码目录
cd ~/lede
#拉取最新源码
git pull
#更新依赖源
./scripts/feeds update -a && ./scripts/feeds install -a
#进入配置界面
make menuconfig
第一个选项Target System 下选择BCM27XX
树莓派Lean大雕OpenWrt固件之编译篇-OpenWrt Club
OpenWrt Target System

Subtarget选择BCM2710 boards (64 bit)

树莓派Lean大雕OpenWrt固件之编译篇-OpenWrt Club
OpenWrt Subtarget

Target Profile 选择 Raspberry Pi 2b-1.2/3B/3B+/3CM,这个一定要选对,如果没选你可能没有WiFi和一些必要功能。之前Lean的源码编译选择树莓派是没有这个选项的,文章发布的前几个小时Lean已经修复了这个问题。

树莓派Lean大雕OpenWrt固件之编译篇-OpenWrt Club
OpenWrt Target Profile

Target Images 选择如下图:

树莓派Lean大雕OpenWrt固件之编译篇-OpenWrt Club

注意:如果你想要编译进Docker和较多的插件,最后一个选项Root filesystem partition size 这个选项必须大于270MB,或者你不使用`ext4分区格式。

选择插件

用Lean的源码编译就是为了那些插件,比如Docker、luci-app-ssr-plus这些,用起来还是非常方便的,所以在编译的时候我需要进行选择。

进入LuCI配置选项:

树莓派Lean大雕OpenWrt固件之编译篇-OpenWrt Club

通常你需要对以下几个选项进行配置:

  1. Conllections —> 选中 luci (这个是luci的web控制界面,如果你不需要web界面完全可以不用选择)
  2. Modules —> Translations —> Simplified Chinese (zh-cn) 简体中文
  3. Applications :
    这里面就是插件,比如多拨的插件科学上网的插件,建议第一次编译不要选择太多,除了默认的我勾选了luci-app-docker和luci-app-ssr-plus、v2ray,其他保持默认。
  4. Themes—>主题界面,根据自己喜好选择,也可以全不选中,不过建议永默认。
  5. Utilities —> Disc –>cfdisk 选择这个是因为Docker初始化脚本不能识别SD卡,所以用cfdisk来手动创建分区。

其他根据自己的需求进行选择,第一次编译系统不建议选择大量软件,这样出错的记录就减小,当一些系统环境编译依赖都顺利编译之后就再添加。

最后保存配置文件,键盘方向键移动到Save回车选择OK回车再次回车方向键选择EXIT 即可退出配置界面。

预下载编译依赖

配置已经完成,你选择的一些插件之类的都需要一些依赖来编译,在开始编译之前,我建议先对这些依赖进行下载,需要全局翻翻翻,因为有些已经被墙,这也是为什么eSir推荐用服务器来编译的缘故。

代理设置

假设你用的虚拟,你运行虚拟机的主机有自然与科学的软件,你可以在编译的虚拟机内进行如下设置:

vim ~/.bashrc

来到最后面加入以下内容:

export ALL_PROXY=socks5://192.168.1.110:1081

上面这句的意思就是让你的虚拟机终端也走socks5的代理,192.168.1.110这个IP是你主机的IP地址,后面是代理的端口,最后执行以下命令让其生效:

source ~/.bashrc

依赖下载

在终端输入一下命令:

make download V=s

这个过程可能很慢,也有可能会失败,要看你的网络环境,如果有下载不下来的需要重新下载,这里推荐用eSir的dl文件,他已经全部预先下载了,你只需要解压后放到源码目录即可使用。

开始编译

终端输入一下命令开始编译系统:

make V=s -j1

V=s:啰嗦模式,会详细显示整个编译过程,排错比较好用。

-j1:线程限制,建议第一次编译用单线程,如果出错容易排错。

当然如果你对编译比较有信息可以执行以下命令:

make V=s -j$(nproc)

-j$(nproc)会自自动用你CPU核心数来进行编译。

这个编译过程可能会很慢,如果成功你会看到大概如下信息:

树莓派Lean大雕OpenWrt固件之编译篇-OpenWrt Club

如果失败,出现Error等错误提示,根据提示在去找答案吧。

编译好的系统镜像目录在:

~/lede/bin/targets/brcm2708/bcm2710

平台不同,目录也会不同,树莓派的就这个目录下,你可以使用Filezilla、WinSCP等FTP软件下载到本机进行刷入,到此整个编译过程结束。

说实在的,做笔记写教程好累,又得截图又得码子,其实上面的操作步骤很少,也很简单,推荐新手区看一下eSir的视频编译教程,在YouTube有售,并且还有一些你需要知道的必要知识等。

现在唯一的问题是/etc/docker-init初始化脚本无法执行,其他一些顺利。

OpenWrt 固件编译 树莓派
赞(11) 收藏(0)
树莓派移植Lean插件到OpenWrt官方源码里
上一篇
树莓派Lean大雕OpenWrt固件之食用 Docker 篇
下一篇
再想想
所有评论(4)
  • L

    您好,编译好的文件可否分享下呢?不麻烦的话请发到我邮箱,因为在这回复我可能收不到提醒。感谢。

    3年前 回复
    • Luobo

      @L: 已经分享过了:https://openwrt.club/24.html

      3年前 回复
  • zgzsjs

    怎么下载啊

    2年前 回复
  • Guoch

    您好,请问一下默认的wifi密码是什么呢?用的您最新的固件

    1年前 回复
聚合文章
OpenWrt 使用 Luci-app-frpc 配合Docker 内网穿透
OpenWrt 利用Docker 搭建Cloud Torrent 下载BT/PT种子
Ubuntu 18.04 编译OpenWRT遇到libwebsockets 重复问题
Ubuntu 18.04 编译OpenWRT遇到错误和解决办法
云标签
Adguard BT下载 Compose Docker LEDE OpenSSL OpenWrt OpenWrt功能 PassWall PT下载 Torrent Ubuntu 个性修改 内网穿透 固件编译 服务器 树莓派 端口映射 网站环境
Ubuntu 18.04 编译OpenWRT遇到libwebsockets 重复问题
3年前
2,420 0 0
Ubuntu 18.04 编译OpenWRT遇到错误和解决办法
3年前
4,015 0 2
OpenWrt 利用docker-compose 搭建网站环境
3年前
4,409 2 3
如何在 OpenWrt 中安装Docker Compose
3年前
11,092 106 15
4 11
  • 11
  • 4
Copyright © 2019-2023 OpenWrt Club. Designed by nicetheme.
  • 首页
  • OpenWrt系统
  • OpenWrt插件
  • OpenWrt固件
  • 友人帐
  • OpneWrt 论坛
萝卜
茕茕孑立,孑孓而行。
13
文章
36
评论
104
喜欢