当前位置: 首页 > news >正文

关于GitHub action云编译openwrt

特别声明:此教程仅你有成功离线编译的经验后,使用下列教程更佳

不建议没有任何成功经验的人进行云编译

1、准备工作

使用GitHub云编译模板

GitHub - jxjxcw/build_openwrt: 利用Actions在线云编译openwrt固件,适合官方源码,lede,lienol和immortalwrt源码,支持X86,电视盒子等众多设备!利用Actions在线云编译openwrt固件,适合官方源码,lede,lienol和immortalwrt源码,支持X86,电视盒子等众多设备! - jxjxcw/build_openwrthttps://github.com/jxjxcw/build_openwrt.git

2、拉去模板后如图所示

其实最重要的就是

.github/workflows

configs

diy-script.sh

这三个地方的文件

首先介绍一下这些文件的作用

.github/workflows的作用是启动编译的整体代码,就跟你离线编译的流程一样(文章末尾我会附上一个我的yml代码)

configs文件夹放置的是你编译手动选择的插件以及相关设置(make menuconfig操作完后openwrt目录里面会自动生成一个.config文件)

diy-script.sh的作用(可有可无)如果你是完全希望你的固件符合你的意愿,比如固件的IP地址,需要添加的第三方,固件需要打什么补丁等,你就可以使用这个脚本。

下面是离线编译的流程(请确保你已经完全熟悉了离线编译的所有流程)

#首先装好 Linux 系统,推荐 Debian 或 Ubuntu LTS
#安装编译依赖sudo apt update -y
sudo apt full-upgrade -y
sudo apt install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \
bzip2 ccache clang cmake cpio curl device-tree-compiler flex gawk gcc-multilib g++-multilib gettext \
genisoimage git gperf haveged help2man intltool libc6-dev-i386 libelf-dev libfuse-dev libglib2.0-dev \
libgmp3-dev libltdl-dev libmpc-dev libmpfr-dev libncurses5-dev libncursesw5-dev libpython3-dev \
libreadline-dev libssl-dev libtool llvm lrzsz msmtp ninja-build p7zip p7zip-full patch pkgconf \
python3 python3-pyelftools python3-setuptools qemu-utils rsync scons squashfs-tools subversion \
swig texinfo uglifyjs upx-ucl unzip vim wget xmlto xxd zlib1g-dev#下载源代码,更新 feeds 并选择配置git clone https://github.com/coolsnowwolf/lede
cd lede
./scripts/feeds update -a
./scripts/feeds install -a
make menuconfig#下载 dl 库,编译固件 (-j 后面是线程数,第一次编译推荐用单线程)make download -j8
make V=s -j1#本套代码保证肯定可以编译成功。#二次编译:cd lede
git pull
./scripts/feeds update -a
./scripts/feeds install -a
make defconfig
make download -j8
make V=s -j$(nproc)#如果需要重新配置:rm -rf .config
make menuconfig
make V=s -j$(nproc)#编译完成后输出路径:bin/targets

    详细使用教程(workflows action的使用教程)

    1,注册账号

    • 点击github.com 网站右上角的【Sign up】
    http://www.lqws.cn/news/212653.html

    相关文章:

  1. 应急响应思路
  2. 大故障,阿里云核心域名疑似被劫持
  3. vue3+dify从零手撸AI对话系统
  4. python asyncio的作用
  5. golang项目中如何使用私密仓库的扩展包
  6. 大模型在创伤性脑出血全周期预测与诊疗方案中的应用研究
  7. JDK21深度解密 Day 15:JDK21实战最佳实践总结
  8. Ubuntu 配置使用 zsh + 插件配置 + oh-my-zsh 美化过程
  9. ELF文件,静态链接(Linux)
  10. 开疆智能Ethernet/IP转Modbus网关连接质量流量计配置案例
  11. Redis 实现分布式锁:深入剖析与最佳实践(含Java实现)
  12. 深度解析:Spring Boot 配置加载顺序、优先级与 bootstrap 上下文
  13. 《JavaAI:稳定、高效、跨平台的AI编程工具优势解析》
  14. RD-Agent-Quant:一个以数据为中心的因素与模型联合优化的多智能体框架
  15. 408第一季 - 数据结构 - 字符串和KMP算法
  16. 【Zephyr 系列 13】BLE Mesh 入门实战:构建基础节点通信与中继组播系统
  17. 【C++】类型转换
  18. 死锁的四个必要条件
  19. HTML面试整理
  20. 在Mathematica中使用Newton-Raphson迭代绘制一个花脸
  21. 【判断既约分数】2022-4-3
  22. Python60日基础学习打卡Day46
  23. 杭州瑞盟 MS35774/MS35774A 低噪声256细分微步进电机驱动,用于空调风门电机驱动,香薰电机驱动
  24. 【HarmonyOS5】UIAbility组件生命周期详解:从创建到销毁的全景解析
  25. 智能手表供应链与采购清单(Aurora Watch S1)
  26. 用队列实现栈
  27. [TI板]MSPM0G3507学习笔记(一) 超详细keil环境配置+烧录配置+空工程迁移+vscode配置+点灯
  28. 容器安全最佳实践:云原生环境下的零信任架构实施
  29. 游戏(game)
  30. 【RTSP从零实践】1、根据RTSP协议实现一个RTSP服务