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

编译OpenWrt步骤

实验平台搭建

硬件平台:hilink-7628n核心板

宿主机系统:ubuntu20.04 server

宿主机安装所需工具:

binutils bzip2 diff find flex gawk gcc-6+ getopt grep install libc-dev libz-dev
make4.1+ perl python3.7+ rsync subversion unzip which

官方安装步骤:https://github.com/openwrt/openwrt

镜像下载工具:TFTPD64 v4.64

镜像下载途径:LuCI Web或在U-Boot中使用TFTP

常规下载release版本压缩包安装

任务:将openwrt23.05.5系统装入hilink-7628n主板

openwrt源码链接:

https://github.com/openwrt/openwrt/archive/refs/tags/v23.05.5.zip

编译步骤(在宿主机上操作):

1. mkdir openwrt

2. wget https://github.com/openwrt/openwrt/archive/refs/tags/v23.05.5.zip

3. unzip openwrt-23.05.5.zip

4. cd openwrt-23.05.5

5. ./scripts/feeds update -a

6. ./scripts/feeds install -a

7. make menuconfig

注意:将老版本系统源码根目录下的.config文件复制到新系统源码目录下,可以省去make menuconfig步骤。

8. make

生成的镜像路径:openwrt-23.05.5/bin/targets/ramips/mt76x8/openwrt-ramips-mt76x8-hilink_hlk-7628n-squashfs-sysupgrade.bin

git clone安装

任务:将main branch下的系统装入hilink-7628n主板

注意:main分支下为snapshoot版本(开发版-非稳定版),随着时间的推移opkg安装软件会出现不兼容问题。

编译步骤:

1. git clone https://github.com/openwrt/openwrt.git

注意:默认就在main分支

2. cd openwrt

3. ./scripts/feeds update -a

4. ./scripts/feeds install -a

5. make menuconfig

注意:将老版本系统源码根目录下的.config文件复制到新系统源码目录下,可以省去make menuconfig步骤。

6. make

生成的镜像路径:openwrt/bin/targets/ramips/mt76x8/openwrt-ramips-mt76x8-hilink_hlk-7628n-squashfs-sysupgrade.bin

git clone安装(指定tag)

任务:将v23.05.5 tag下的系统装入hilink-7628n主板。假如项目是以前clone的,并且用的是main  branch还对某些源码文件做了修改或新增。

注意:tag下面的版本为稳定版本,随着时间的推移opkg安装软件不会出现不兼容问题。

编译步骤:

1. cd openwrt

2. git fetch origin

同步代码仓库

3. git stash

将你的本地更改保存到一个栈中,并恢复工作目录的干净状态。

4. git checkout tags/v23.05.5

5. git stash pop

恢复本地更改

6. ./scripts/feeds update -a

7. ./scripts/feeds install -a

8. make menuconfig

9. make -j6

-j后面的数字:cpu核心数 * 1.5

相关文章:

编译OpenWrt步骤

实验平台搭建 硬件平台:hilink-7628n核心板 宿主机系统:ubuntu20.04 server 宿主机安装所需工具: binutils bzip2 diff find flex gawk gcc-6 getopt grep install libc-dev libz-dev make4.1 perl python3.7 rsync subversion unzip whi…...

Linux:confluence8.5.9的部署(下载+安装+pojie)离线部署全流程 遇到的问题

原文地址Linux:confluence8.5.9的部署(下载安装破ji)离线部署全流程_atlassian-agent-v1.3.1.zip-CSDN博客 背景:个人使用2核4g 内存扛不住 总是卡住,但是流程通了所以 直接公司开服务器干生产 个人是centos7 公司…...

✅✅✅【Vue.js】sd.js基于jQuery Ajax最新原生完整版for凯哥API版本

api.js //封装ajax方法 import $g from "../sg";//vue项目使用 import $ from jquery;//(提示:原生开发页面请前往https://jquery.com下载最新版jQuery) import { Message } from "element-ui";//element项目使用 // import axios from "…...

axios 请求跨域问题

文章目录 1. 使用场景2. 解决办法 1. 使用场景 ① 编写后端测试接口&#xff0c;Vue-CLI 的默认端口为 8080&#xff0c;所以为避免端口冲突&#xff0c;我们后端的端口号换成 8081。 ② 前端通过 axios 向后端服务发起请求。 <script> import axios from axios export…...

什么是 Faiss?

好的&#xff0c;我来详细解释 Faiss&#xff0c;它的用途、使用场景&#xff0c;以及如何安装和使用。 什么是 Faiss&#xff1f; Faiss 是由 Facebook AI Research 开发的一个开源库&#xff0c;专门用于高效的相似性搜索和聚类。它非常擅长在高维向量空间中进行快速搜索&a…...

24.UE5枚举,怪物分类,龙卷风技能

2-26 枚举、怪物分类、龙旋风技能、掉落概率_哔哩哔哩_bilibili 目录 1.枚举 1.1枚举类型的创建 1.2 将枚举类型绑定到怪物蓝图上 1.3枚举类型的使用 1.3.1创建新的掉落物 1.3.2更改怪物掉落逻辑 2.龙卷风技能 2.1输入映射 2.2龙卷风发射物的创建 2.3龙卷风伤害逻辑…...

什麼是ISP提供的公共IP地址?

公共IP地址是ISP分配給設備或網路的全球唯一地址。此地址允許通過互聯網識別和訪問設備。ISP提供的公共IP地址具有幾個關鍵特徵&#xff1a; 1.每個公網IP在全球網路內都是唯一的&#xff0c;避免衝突。 2. 公共 IP 地址對其他網路可見&#xff0c;並且可用於地理定位設備。 …...

git操作总结

git基本知识 工作区域 远程仓库&#xff1a; 就是我们托管在github或者其他代码托管平台上的仓库。本地仓库&#xff1a; 就是在我们本地通过git init命令初始化的新建的仓库。工作区&#xff1a; 就是我们写代码、编辑文件的地方。暂存区&#xff1a; 当工作区的内容写好了之…...

CompressAI安装!!!

我就不说废话了&#xff0c;直接给教程&#xff0c;还是非常简单的 但是我看了好多帖子&#xff0c;都没有说明情况 一定要看最后最后的那个注释 正片开始&#xff1a; 一共有三种方式&#xff1a; 第一种就是本机安装&#xff1a; 在网址上下载对应版本Links for compre…...

豆包MarsCode算法题:最小周长巧克力板组合

问题描述 思路分析 这道题可以抽象为一个最优化问题&#xff1a; 问题分析 每个正方形的面积为 k &#xff0c;对应的边长为 k &#xff0c;周长为 4k 。给定整数 n &#xff0c;我们需要找到若干正方形&#xff0c;使得它们的面积之和恰好等于 n&#xff1a; 同时尽量最小…...

vue项目添加骨架屏vue-skeleton-webpack-plugin,通过app.vue添加骨架屏,解决衔接空白问题

安装插件 yarn add vue-skeleton-webpack-plugin在 webpack 中引入插件&#xff1a;以4版本为例配置如下 vue.config.js plugins: [new SkeletonWebpackPlugin({webpackConfig: {entry: {app: path.join(__dirname, ./src/components/entry-skeleton.js),},},minimize: true,…...

测试实项中的偶必现难测bug之模糊匹配逻辑

问题: 现在有一个场景,如果只是通过功能测试会比较难测,例如刚开始我们做会员的时候,只有白银会员,在用户分群的场景下,需要用条件逻辑匹配,当时开发用了like的匹配方式没有问题。1年后加了白银试用会员,导致在统计会员分群的时候明明条件选的是白银会员,但是统计的数…...

Vue:后端返回二进制文件,前端如何实现浏览器自动下载?

Vue项目开发中&#xff0c;遇到界面下载功能时&#xff0c;前端如何实现将后端返回二进制文件在浏览器自动下载&#xff1f; 一、关键代码&#xff1a; export function downloadFile(fileName) {axios({method: post,url: process.env.VUE_APP_BASE_API /cgi-bin/file,data:…...

Android解压zip文件到指定目录

很多时候需要把一个预制的zip文件解压到根目录&#xff0c;下面是一个实例代码&#xff1a; private static final int BUFFER_SIZE 4096;public static void unZip(String zipFilePath, String targetDir) throws IOException {File destDir new File(targetDir);if (!destD…...

主要用于图像的颜色提取、替换以及区域修改

这段代码涉及了以下几个关键步骤&#xff0c;主要用于图像的颜色提取、替换以及区域修改。下面是对代码的详细解析&#xff1a; 1. 导入库 import cv2 import matplotlib.pyplot as plt import numpy as npcv2: OpenCV库&#xff0c;用于图像处理。matplotlib.pyplot: 用于绘…...

gbase8c之运维操作

导出结构&#xff1a; gs_dump -U gbase8s -W Password123 -f /tmp/dump_only_structure.sql -p 15400 sids_station -n public -s -F p 导出数据&#xff1a; gs_dump -U gbase8s -W Password123 -f /tmp/dump_only_data.sql -p 15400 sids_station -n public -a -F p 导入…...

云原生学习

1、云原生学习 文章目录 1、云原生学习1. 介绍2. Docker容器化 1. 介绍 什么是云原生&#xff1f;原生指使用JAVA等语言编写的项目&#xff0c;云是指将项目部署到云服务器上云平台&#xff1a;公有云、私有云 本地平台是指直接部署在自己计算机&#xff0c;而开发的应用一定要…...

深入解析 Vue 3 中的 defineExpose

深入解析 Vue 3 中的 defineExpose 在 Vue 3 的组合式 API&#xff08;Composition API&#xff09;中&#xff0c;defineExpose 是一个重要的辅助函数&#xff0c;专门用于在 <script setup> 模式下暴露组件内部的属性和方法给父组件使用。本文将详细解析 defineExpose…...

Docker3:docker基础1

欢迎来到“雪碧聊技术”CSDN博客&#xff01; 在这里&#xff0c;您将踏入一个专注于Java开发技术的知识殿堂。无论您是Java编程的初学者&#xff0c;还是具有一定经验的开发者&#xff0c;相信我的博客都能为您提供宝贵的学习资源和实用技巧。作为您的技术向导&#xff0c;我将…...

【UGUI】背包的交互01(道具信息跟随鼠标+道具信息面板显示)

详细程序逻辑过程 初始化物品栏&#xff1a; 在 Awake 方法中&#xff0c;通过标签找到提示框和信息面板。 循环生成10个背包格子&#xff0c;并为每个格子设置图标和名称。 为每个格子添加 UInterMaager232 脚本&#xff0c;以便处理交互事件。 关闭提示框和信息面板&#…...

Graphormer模型剪枝与量化实战:基于C++的推理引擎优化

Graphormer模型剪枝与量化实战&#xff1a;基于C的推理引擎优化 1. 为什么需要优化Graphormer推理性能 Graphormer作为图神经网络领域的重要模型&#xff0c;在实际部署时常常面临两个关键挑战&#xff1a;计算资源消耗大和内存占用高。这些问题在边缘设备和资源受限环境中尤…...

别再纠结了!用Qt开发桌面应用,QWidget和QML到底怎么选?(附实战场景分析)

Qt技术选型实战&#xff1a;QWidget与QML的深度决策指南 当你启动一个新的Qt桌面应用项目时&#xff0c;第一个技术决策往往最令人纠结——该选择传统的QWidget还是现代的QML&#xff1f;这个选择不仅影响开发效率&#xff0c;更决定了产品的长期维护成本和用户体验品质。作为经…...

C语言void指针详解与应用实践

1. 理解void指针的本质在C语言中&#xff0c;void指针(void *)是一种特殊类型的指针&#xff0c;它被称为"通用指针"或"无类型指针"。与普通指针不同&#xff0c;void指针不关联任何具体的数据类型&#xff0c;这使得它具有独特的特性和用途。1.1 void指针…...

MetaQTL元分析实战:从文献整理到结果可视化的保姆级流程(附避坑指南)

MetaQTL元分析实战&#xff1a;从文献整理到结果可视化的保姆级流程&#xff08;附避坑指南&#xff09; 基因组学研究正迎来数据爆炸的时代&#xff0c;单个QTL研究往往受限于样本量和实验设计&#xff0c;而MetaQTL分析通过整合多源数据&#xff0c;能显著提高QTL检测的统计效…...

Everything Claude Code 爆火背后:我们正在用“团队”而非“个体”构建 AI 编程助手

最近 24 小时&#xff0c;GitHub 上一个叫 Everything Claude Code 的项目新增了 5707 颗星&#xff0c;总星数突破 13 万。如果你只把它看作“Claude Code 的配置增强包”&#xff0c;那可能错过了更重要的信号——这波热度背后&#xff0c;是一场从“工具竞争”向“工程体系竞…...

ESP32硬件PWM控制库PWMOutESP32实战指南

1. PWMOutESP32 库深度解析&#xff1a;面向嵌入式工程师的 ESP32 PWM 控制实践指南 1.1 库定位与工程价值 PWMOutESP32 是一个专为 ESP32 系列微控制器设计的轻量级 PWM 输出控制库&#xff0c;其核心目标是提供 Arduino 风格的 pwm.analogWrite(pin, value) 接口&#xff…...

如何快速部署Fay数字人情感分析模型:从配置到性能测试的完整指南

如何快速部署Fay数字人情感分析模型&#xff1a;从配置到性能测试的完整指南 【免费下载链接】Fay fay是一个帮助数字人&#xff08;2.5d、3d、移动、pc、网页&#xff09;或大语言模型&#xff08;openai兼容、deepseek&#xff09;连通业务系统的agent框架。 项目地址: htt…...

TongWeb8.0支持JBoss Weld‌

JBoss Weld‌ 是 CDI&#xff08;Contexts and Dependency Injection&#xff0c;JSR 299/346/365&#xff09;的官方参考实现&#xff08;RI&#xff09;&#xff0c;用于在 Java EE / Jakarta EE 应用中提供依赖注入和上下文管理功能。它不仅内置于 WildFly、GlassFish 等应用…...

Claude Code 接入第三方 API 完美教程

Claude Code 接入第三方 API 完美教程 1. 背景与核心痛点 在使用 Claude Code 命令行工具时&#xff0c;如果直接配置三方代理地址 (ANTHROPIC_BASE_URL) 和秘钥 (ANTHROPIC_API_KEY)&#xff0c;通常会遇到以下致命问题&#xff1a; 强制前缀校验&#xff1a;Claude Code 源码…...

Node.js 沙箱库 vm2 曝高危沙箱逃逸漏洞(CVE-2026-22709)

近日&#xff0c;热门 Node.js 沙箱库 vm2 被披露一个高危漏洞&#xff08;CVE-2026-22709&#xff0c;CVSS 评分 9.8&#xff0c;Critical&#xff09;。攻击者可利用该漏洞轻松突破沙箱限制&#xff0c;在底层主机系统上执行任意代码&#xff08;RCE&#xff09;。 vm2 是一…...